Cats (Assignment@Lokal)

GitHub Cards Preview

Features & Description:

  • 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

Tech Stack ✨

  • 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)

Instructions to clone this project ✌

  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