Pokedex Compose
Pokedex Compose is an independent re-write of a similar project by the name of Pokedex. I am recreating the UI but I am doing it using Google's new UI framework Jetpack Compose and also adding additional functionalities like a favorite pokemon list and a pokemon search. I am leveraging the MVVM architecture along with Hilt for dependency injection and Retrofit for making API calls. Full library list below.
Tech stack & Open-source libraries
-
Minimum SDK level 24
-
Kotlin based, Coroutines + Flow for asynchronous.
-
Hilt for dependency injection.
-
Retrofit2 & OkHttp3 - construct the REST APIs and paging network data.
-
JetPack
- Lifecycle - dispose of observing data when lifecycle state changes.
- ViewModel - UI related data holder, lifecycle aware.
- Room Persistence - construct a database using the abstract layer.
- Compose - Android’s modern toolkit for building native UI.
- Navigation - a framework for navigating between 'destinations' within an Android application.
- Paging3 - Android library that makkes it easier to load data gradually and gracefully.
-
Architecture
- MVVM Architecture (Model - View - ViewModel)
- Repository pattern
-
Moshi - A modern JSON library for Kotlin and Java.
-
Landscapist - Jetpack Compose image loading library which can fetch and display network images using Glide, Coil, Fresco.
-
Accompanist - A group of libraries that aim to supplement Jetpack Compose with features that are commonly required by developers but not yet available.
-
Material-Icons - Material design icons for your app.
MAD Score
Architecture
Pokedex Compose is based on MVVM architecture and a repository pattern.
Open API
Pokedex Compose uses the PokeAPI for fetching Pokemon related information via a RESTful API interface.
❤️
Find this repository useful? Follow me for more Android builds like this one!