About:
- The app work offline if data has been previously loaded.
- The app no internet scenario, show appropriate UI indicators.
- The app automatically retry loading data once the connection is available.
BONUS:
- MVVM
- support dark mode .
Built With 🛠
Kotlin .
Coroutines - For asynchronous and more..
Flow - A cold asynchronous data stream that sequentially emits values and completes normally or with an exception.
Android Architecture Components - Collection of libraries that help you design robust, testable, and maintainable apps.
LiveData - Data objects that notify views when the underlying database changes.
ViewModel - Stores UI-related data that isn't destroyed on UI changes.
ViewBinding - Generates a binding class for each XML layout file present in that module and allows you to more easily write code that interacts with views.
Room - SQLite object mapping library.
Dependency Injection -
Hilt-Dagger - Standard library to incorporate Dagger dependency injection into an Android application.
Hilt-ViewModel - DI for injecting ViewModel.
Retrofit - A type-safe HTTP client for Android and Java.
Coil-kt - An image loading library for Android backed by Kotlin Coroutines.