This template demonstrates modern Android development with Jetpack Compose, Hilt, Coroutines, Flow, Jetpack (Room, ViewModel), and Material 3 based on Clean architecture.
- Minimum SDK level 24.
- Kotlin based, utilizing Coroutines + Flow for asynchronous operations.
- Jetpack Libraries:
- Jetpack Compose: Android’s modern toolkit for declarative UI development.
- Lifecycle: Observes Android lifecycles and manages UI states upon lifecycle changes.
- ViewModel: Manages UI-related data and is lifecycle-aware, ensuring data survival through configuration changes.
- Navigation: Facilitates screen navigation, complemented by Hilt Navigation Compose for dependency injection.
- Room: Constructs a database with an SQLite abstraction layer for seamless database access.
- Hilt: Facilitates dependency injection.
- Architecture:
- MVVM Architecture (View - ViewModel - Model): Facilitates separation of concerns and promotes maintainability.
- Repository Pattern: Acts as a mediator between different data sources and the application's business logic.
- Kotlin Serialization: Kotlin multiplatform / multi-format reflectionless serialization.
- ksp: Kotlin Symbol Processing API for code generation and analysis.
- Image loading library Jetpack compose image loading library
Android Template adheres to the Clean MVVM architecture and implements the Repository pattern, aligning with Google's official architecture guidance.