Skip to content

Origogi/android-compose-pokedex

Repository files navigation

Android Compose Pokedex

This Pokedex app was built using Android Compose, allowing users to explore and search for Pokémon with a beautifully designed interface.

Reference(Design)

Figma

Creator Profile

Screenshots

Features

  • Filter Pokémon by generation
  • Display pokemon detail information
  • Favorite Pokémon
  • Unlimited scrolling

Filter Pokémon by type, sort Pokémon by name, number was disabled because of the Poke API limitation. but added the feature to see almost all Pokémon.

API

PokeAPI is a RESTful Pokémon API that provides a lot of Pokémon data, including Pokémon, moves, abilities, types, and more.

Libraries

Hilt

Hilt is a dependency injection library for Android that simplifies Dagger setup. It provides a standard way to manage dependencies in Android apps, making your code more modular, testable, and maintainable. Hilt handles the lifecycle of components and supports scoped bindings for different Android classes such as Activities, Fragments, and ViewModels.

Coil

Coil (Coroutine Image Loader) is a lightweight and efficient image loading library for Android, backed by Kotlin Coroutines. It supports image caching, transformations, and animations. Coil integrates seamlessly with Jetpack Compose and traditional Android Views, providing a flexible API to load images from various sources like URLs, resources, and files.

Retrofit

Retrofit is a type-safe HTTP client for Android and Java, simplifying the interaction with RESTful web services. It uses annotations to define API endpoints and supports various converters to handle different data formats such as JSON and XML. Retrofit integrates with OkHttp for network operations and supports synchronous and asynchronous request execution, making it a versatile tool for handling network communication.

Architecture

Layered architecture, MVVM(Model-View-ViewModel) is used in this project.

Appendix

Other Mobile Platform

Releases

No releases published

Packages

No packages published

Languages