Locks Management
A sample Android application is made in Kotlin to demonstrate the implementation of MVVM with Clean Architecture.
The application fetches the Locks list from the SampleAPI and stores them in a local database. Data is always displayed using the Single Source of Truth principle which is SQLite Database.
- Data refresh policy: Once a day
Used Libraries
- Dagger Hilt - Used for Dependency Injection.
- Retrofit - Used to make easier Network API calls.
- Coroutines - For managing long running or network tasks off the main thread.
- GSON - A converter for JSON Serialization.
- ViewModel - Stores and manages UI related data in a lifecycle aware way.
- Room - Used for persistent storage in Android.
- DataStore - Used for SharePreferences in Android.
Screen Shots
Loading | Locks List | Serach and Highlight |
---|---|---|
![]() |
![]() |
![]() |