CATSAPP es una aplicación Android diseñada para cargar y mostrar fotos de gatos utilizando la biblioteca Paging 3 para la carga paginada de datos. La aplicación está construida con Jetpack Compose para la interfaz de usuario y Koin para la inyección de dependencias.
- Jetpack Compose: Framework de UI moderna para Android.
- Paging 3: Librería para manejo de paginación eficiente de grandes conjuntos de datos.
- Koin: Librería ligera para la inyección de dependencias en aplicaciones Kotlin.
- Ve a la página Pexels.
- Regístrate o inicia sesión si ya tienes una cuenta.
- Una vez dentro, dirígete a la sección API.
- Crea una nueva aplicación para obtener tu API Key.
- Copia la API Key que te proporcionen, ya que la necesitarás para configurar la aplicación.
- Abre el archivo local.properties en la raíz de tu proyecto Android.
- Añade la siguiente línea API_KEY_PEXEL = YOUR_API_KEY, reemplazando YOUR_API_KEY con la clave que obtuviste de Pexel.
Gestiona todas las operaciones relacionadas con la red, incluyendo la configuración del cliente HTTP y la inyección de Data Sources. Este módulo es responsable de proporcionar las dependencias necesarias para interactuar con la API de Pexel.
Maneja la lógica de presentación de la aplicación. Este módulo incluye el repositorio, los casos de uso (UseCases), el ViewModel, y la UI.
- PexelPagingDataSource: Maneja la paginación por medio de
PagingSourceyLoadResult.Page. Se encarga de la comunicación directa con la API de Pexel para obtener las fotos paginadas.
- PexelPagingRepository: Implementación del repositorio que utiliza el Data Source para obtener los datos de la API de Pexel. Este repositorio es el puente entre la fuente de datos y el caso de uso.
- PexelPagingRepositoryInterface: Implementa el repository en los use case.
- GetCatUseCase: Implementa la lógica de negocio.
- HomeViewModel: Gestiona el estado de la UI.
- HomeScreen: La interfaz de usuario que consume los datos del ViewModel y presenta la información en la pantalla.