This template is compatible with the latest stable version of Android Studio.
- Room Database
- Hilt
- ViewModel, read+write
- UI in Compose, list + write (Material3)
- Navigation
- Repository and data source
- Kotlin Coroutines and Flow
- Unit tests
- UI tests using fake data with Hilt
The following module types are used:
coremodules contain objects that are used by one or more feature modules.feature-mymodelcontains themymodelfeature.feature-mymodel-navigationcontains the navigation keys for themymodelfeature. This allows other feature modules to navigate tomymodel's screens without creating a dependency onfeature-mymodel. An alternative approach is to use an api / implementation split.
Check the modularization guidance for more information.
- Clone this branch
git clone https://github.com/android/architecture-templates.git --branch multimodule
- Run the customizer script:
./customizer.sh your.package.name DataItemType [MyApplication]
Where your.package.name is your app ID (should be lowercase) and DataItemType is used for the
name of the screen, exposed state and data base entity (should be PascalCase). You can add an optional application name.
Now in Android is distributed under the terms of the Apache License (Version 2.0). See the license for more information.
