About Android Pokedex project
Hello there, In this project I tried showcasing how to build an Android Application in Jetpack Compose with clean architecture and MVI using some of the jetpack libraries with Kotlin Coroutines & Dagger Hilt. This App is using the GraphQL-Pokemon as a remote data source.
This app is based on the Guide to app architecture article, Kotlin 1.5, and coroutine. I also used some android architecture components like LiveData, ViewModel.
You can check my short term backlog in my Github Projects here
Libraries Used
- ViewModel - store and manage UI-related data in a lifecycle conscious way
- LiveData - notify the view when data changes .
- Jetpack Compose - describe ui components with declarative functions
- Material - Material Components.
- Coroutine - performs background tasks
- Flows - for asynchronous data streams
- Coil - An image loading library for Android backed by Kotlin Coroutines
- Gson - JSON Parser
- Apollo- GraphQL client for the JVM, Android and Kotlin multiplatform
- Dagger Hilt - dependency injector
- Room - Save data in a local database
- Espresso - UI test
- Junit - unit tests
- Truth - Makes your test assertions and failure messages more readable
- Detekt - a static code analysis tool for the Kotlin programming language
- KTLint - Kotlin linter in spirit of feross/standard (JavaScript) and gofmt (Go).
- Gradle Kotlin Plugin - Gradle scripts in Kotlin