Resources to learn more about STM32Cube?

(This might not be the right place to ask this, so I’d be thankful if someone could guide me to the right place)

I’m an engineering student in a car competition team and they have always used STM32CubeIDE.

We have noticed that PlatformIO STM32Cube code is a lot cleaner and easier to read, which will help future generations of the team to understand our code, so we are migrating to it. But unfortunately most of the stuff we used to do in the graphical interface (such as defining pins and clock for example) are done by code and we have no knowledge of how to do that.

With the code examples and PlatformIO documentation I’ve been able to understand some basics, but for more complicated stuff such as CAN Protocol, I had a hard time finding resources and understanding whetever I found.

I was wondering where I can learn more about HAL and STM32Cube as well as PlatformIO.

PS: I’ve seen there is an integration for PlatformIO with CubeMX which I haven’t tried yet. But it’d be nice to be able to learn how to do everything by code, and that’s what I’m aiming for.