Base Android nativa para una aplicación local de calendario de turnos.
- Kotlin y Jetpack Compose
- Material 3
- Gradle Kotlin DSL
java.time.LocalDate(API mínima 26)- Sin backend, cuentas, anuncios ni permisos de red
ui: interfaz Compose y tema visualmodel: modelos de dominio independientes del idiomacalculation: motor genérico de cálculo de ciclos por fechadata/local: persistencia local de la configuración mediante DataStoreutil: conversiones de fecha independientes de zona horaria
./gradlew test assembleDebugShiftCalculator(referenceDate, pattern).shiftFor(date) resuelve fechas pasadas y futuras. La cadencia inicial reutilizable está disponible en DefaultShiftPatterns.SIX_BY_SIX.
La cadencia elegida, su secuencia completa y la fecha de referencia se guardan localmente mediante Preferences DataStore.
