An Android Application written purely in Kotlin utilizing all the latest tech in Android.
The project uses Material Design guidelines, MVVM architecture, Hilt for Dependency Injection and uses Room for an offline- first approach.
- Kotlin
- Coroutines
- Flow for asynchronous.
- Dagger-Hilt (alpha) for dependency injection.
- JetPack Components
- Material Design Components
- Navigation UI
- Architecture
- MVVM Architecture
- Repository pattern
- Database Cache as Single Source of Truth
- Single activity Pattern
- Shared Element transitions using Compose
- Adding Room
- Using fastlane for distribution
- Using Play Core Library for In App Updates
Support it by joining starring this repository. ⭐
And follow me on Medium and Github
Currently I am not taking in Pull requests(will start in a while) however you can always a raise an issue and I'll try fix it.
This project is founded and actively maintained by Shivam Dhuria.
Original dataset taken from the the Stanford Dogs Dataset. Logo thanks to NotKnifoon. Dog Api provides hundreds of free pictures of dogs.
- Retrofit2 & OkHttp3 - construct the REST APIs and paging network data.
- Moshi - A modern JSON library for Kotlin and Java.
- Lottie - Lottie is a mobile library for Android and iOS that parses Adobe After Effects animations exported as json with Bodymovin and renders them natively on mobile!
- Gson - Gson is a Java library that can be used to convert Java Objects into their JSON representation.
- Room - For storing Database.
- Glide - Glide supports fetching, decoding, and displaying video stills, images, and animated GIFs.