Clean architecture
The architecture implemented in the generated application follows the Clean Architecture principles. It aims to reduce the dependencies between your business logic and the services you consume (API, database, framework, third-party libraries), to maintain a stable application during its evolutions, its tests but also during changes or updates from external resources.
The code is divided into layers each having their responsibility. The lower layers should not be aware of the upper layers, in order to not be impacted when they change.