This is an example of usage multi-modules MVVM Pattern on Android with Navigation Component and Clean Architecture
- JetPack:
- ViewModel (https://developer.android.com/topic/libraries/architecture/viewmodel)
- LiveData (https://developer.android.com/topic/libraries/architecture/livedata)
- Navigation Component (https://developer.android.com/guide/navigation)
- Paging (https://developer.android.com/topic/libraries/architecture/paging)
- Room DB with Coroutines (https://developer.android.com/training/data-storage/room)
- Data Binding (https://developer.android.com/topic/libraries/data-binding)
- ViewPager2 (https://developer.android.com/jetpack/androidx/releases/viewpager2)
- SaveStateHandler for ViewModel (https://developer.android.com/topic/libraries/architecture/viewmodel-savedstate)
- Mike Penz Fast Adapter (https://github.com/mikepenz/FastAdapter)
- Retrofit2 with coroutines v.2.7.+ (https://square.github.io/retrofit/)
- Image loading with Coil (https://github.com/coil-kt/coil)
- SharedPreference with Kotpref (https://github.com/chibatching/Kotpref)
- CoroutinesManager (https://github.com/Rasalexman/coroutinesmanager)
- DI with KODI (https://github.com/Rasalexman/KODI)
- Clean Architecture
- Multi-modules project
- Kotlin Gradle DSL
- Material Design
- Kotlin 1.3.+ with coroutines
- Kotlin Flow