La Pokedex es una aplicación que nos permite ver una lista de Pokemons de todas las generaciones y tipos. Se puede filtrar y ver en detalle las estadísticas de cada uno de ellos.
Aplicicación Android basada en la arquitectura MVVM desarrollada con DaggerHilt, StateFlows, ViewModels, Corrutinas, Room, Retrofit y Testing
- Basado en lenguaje Kotlin con una interfaz en XML
- Arquitectura MVVM (Model-View-ViewModel)
- ViewModel y StateFlow: Nos permite almacenar el estado y realizar cambios de forma reactiva en la interfaz de usuario.
- Lifecycle: Observador de los ciclos de vida de Androrid. Los usamos para recolectar los cambios de estado en el StateFlow para modificar la interfaz del usuario.
- Room: Base de datos local sobre SQLite para permitirnos un acceso fluido, eficiente y seguro.
- Retrofit2: Cliente de HTTP para conexiones de red. Nos permite hacer consultas API-REST.
- Gson: Nos permite convertir un formato JSON a un objeto Kotlin.
- Coroutines: Manejo de tareas asíncronas, usado para no bloquear el hilo principal de la aplicación mientras se espera la respuesta de la consulta.
- Glide: Nos permite representar imagenes a traves de una URL.
- Lottie: Nos permite representar animaciones a través de un JSON.
- Dagger Hilt para inyección de dependencias.
- Datastore preferences: Nos permite almacenar datos en local de forma asíncrona. Ideal para guardar preferencias de usuario y configuraciones de la aplicación.
- Testing
- Código con Clean Code y Clean Architecture
PokeAPI proporciona una interfaz API RESTful con objetos muy detallados creados a partir de miles de líneas de datos relacionados con Pokémon.
One column list | Two columns list | White mode |
---|---|---|
Type filter | Detail info | Detail stats |
---|---|---|
Detail defense | Detail evolution |
---|---|
Ir a Releases para descargar el último APK.