Fetches a simple json data from a endpoint and displays the data
Stable build of latest Android studio should build the app
- Jetpack compose
- Modular architecture
- Gradle build with version catalog
- Hilt/Dagger for dependency injection
- Retrofit for API calls
- Kotlinx Serialization for json data handling
- Room for local cache/database
- MVVM architecture with repository pattern
- Pull to refresh
The app has bottom navigation with two items: Home, and Settings
- Loads the main data into this page, but the app starts with the empty state
- You can choose to load the loca data or from the network by pulling down to refresh
- If there is no cached data, you will get notified of it
- Once you pull to refresh, it will pull the data and put them into different catagories based on listId
- Data is ordered by listId first, and within each bucket, it is ordered by name second
- Only data that has non-empty name is populated in the UI
- You can head over to settings tab to clear the cache, and it will clear the data from everywhere
- Can clear the cached data from the app
Thank you for checking it out
- Sujit