Architecture Overview!
Architectural Illustration
The images below illustrates the high-level architecture of the KAppMaker project, showcasing the interaction between different components:



Detailed Architecture
The KAppMaker architecture consists of three main layers/packages (domain, data, presentation):
- Domain: Contains business logic, domain models and exceptions.
- Data: Manages data sources, including user preferences and remote APIs and repositories.
- Presentation: Contains UI components, theme (color, font), and screens. Each screen has its own UiState, UiEvent (user actions), and Composable Screen.
- Navigation: Routes, the back-stack model, and the root
AppNavigationcomposable. Lives atpresentation/navigation/; feature folders stay free of navigation glue. - Root: Application entry point and initialization.
AppInitializercontains startup logic and dependency injection setup. - Util: Utility classes, extensions.