Aplicación bancaria simulada, organizada bajo un enfoque modular, escalable y mantenible.
Implementa Clean Architecture, MVVM, Jetpack Compose, Retrofit, Mockoon, Detekt, Testing y buenas prácticas de accesibilidad.
- Introducción
- Principios arquitectónicos
- Estructura modular por features
- Tecnologías y librerías utilizadas
- Flujo de navegación / UI
- Accesibilidad
- Interceptores y manejo de red
- Mockeo / entorno local (Mockoon)
- Testing
- Calidad del código (Detekt / Lint)
- Guía rápida de uso
- Contribuciones / estilo
- Contacto / licencia
Simulator Bank es una aplicación simulada de banca móvil con funcionalidades típicas como:
- Login y autenticación
- Consulta de cuentas y balances
- Historial de transacciones
- Transferencias
- Perfil de usuario
El proyecto está pensado como entorno de aprendizaje y demostración, aplicando arquitectura limpia, modularización por features y las últimas tecnologías de Android.
- Clean Architecture: separación clara entre capas (data, domain, presentation).
- Modularización por features: cada funcionalidad en su propio módulo independiente.
- MVVM: patrón de presentación para desacoplar lógica de UI.
- Inyección de dependencias: Hilt.
- UI declarativa con Jetpack Compose.
- Networking con Retrofit + interceptores.
- Mockeo de backend con Mockoon.
- Testing a todos los niveles.
- Accesibilidad incorporada.
- Calidad de código con Detekt / ktlint.
/app
/config
/features
├── feature-auth
│ ├── data # repositorios, fuentes remotas/locales, mappers
│ ├── domain # casos de uso, entidades
│ └── presentation # UI (Compose), ViewModels
├── feature-accounts
└── feature-detail
/common
/core
├── network # Retrofit, interceptores
├── di # módulos de inyección globales
├── util # extensiones, helpers
└── testing # utilidades para tests