This is a sample app for Data4Life
- Minimum SDK level 21
- Kotlin based, Coroutines
- Hilt for dependency injection.
- JetPack
- Lifecycle - dispose of observing data when lifecycle state changes.
- ViewModel - UI related data holder, lifecycle aware.
- Architecture
- MVVM Architecture (View - DataBinding - ViewModel - Model)
- Bindables - Android DataBinding kit for notifying data changes to UI layers.
- Retrofit2 & OkHttp3 - construct the REST APIs and paging network data.
- Moshi - A modern JSON library for Kotlin.
- Navigation
Required Improvements and Pending
- Missing Repository and flow (Need some more time to add these)
- ViewModel unit tests
- Room for persistance