-
Offline-Caching using RoomDB - Data is stored in room db to provide offline app usage.
-
Data is fetched in pages as user scrolls down, more pages will be fetched.
-
Fliter cats data by breeds - filters are saved in DB and used to provide suggestions during search.
Flow of Filter -> when user inputs a "breed keyword", all cats information is fetched from api and saved in DB. Results are provided from DB(Single Souce of Truth in this app) to UI
- Android
- Kotlin
- Paginantion - Paging3
- Kotlin-Flows
- Kotlin-Coroutines
- MVVM-Architecture
- RoomDB, Type Convertors(storing complex data in DB)
- Glide (Image Loading and caching)
- Retrofit 2
- Dagger-Hilt (DI)
open Terminal or CMD (Windows)
paste this command given below in Terminal
command:- git clone https://github.com/rkpsx7/CatAssignment.git
OR
Open Android Studio
Click -> File > New > Project From Version Control
and paste the url in URL box
URL :- https://github.com/rkpsx7/CatAssignment.git