Skip to content

RubiProg/Sommelier

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Sommelier - Tu Sumiller Personal 🍷

Sommelier es una aplicación móvil avanzada para Android que actúa como un sumiller experto de bolsillo. Utiliza un algoritmo de recomendación basado en la personalidad y el estado de ánimo para sugerir el vino perfecto, integrando además herramientas profesionales de gestión de inventario y estadísticas de consumo.

Este proyecto ha sido desarrollado siguiendo patrones de diseño modernos y una arquitectura robusta para garantizar la escalabilidad y el rendimiento.


💡 Características Principales

  • Maridaje Emocional: Un test interactivo de 5 etapas que analiza preferencias sensoriales y contexto social para recomendar el vino ideal.
  • Gestión de Inventario en Tiempo Real:
    • Descuento automático de stock tras cada recomendación.
    • Alertas visuales para productos con bajo stock (3 botellas o menos).
    • Funciones de reposición y reinicio total de inventario.
  • Estadísticas Avanzadas: Panel de control con el "Top 5" de vinos más consumidos, filtrable por semana, mes y año.
  • Área de Personal Segura: Sección restringida por contraseña (1234) para el control administrativo del restaurante.
  • Diseño Premium: Interfaz construida íntegramente con Material 3, utilizando una sofisticada paleta de colores en tonos Malva y Burdeos profundo.

🛠️ Stack Tecnológico y Arquitectura

La aplicación implementa una arquitectura MVVM (Model-View-ViewModel) bajo los principios de Clean Architecture:

  • Lenguaje: Kotlin 2.1.0
  • UI: Jetpack Compose con arquitectura declarativa y navegación segura.
  • Inyección de Dependencias: Hilt 2.54 con procesamiento KSP.
  • Base de Datos: Room 2.7.0-alpha11.
  • Procesamiento de Símbolos: KSP para una generación de código eficiente.
  • Carga de Imágenes: Coil para la gestión eficiente de recursos gráficos.

🔧 Notas de Compilación (Solución de errores)

El proyecto está configurado para ser compatible con el compilador de Kotlin 2.1.0. Se han aplicado los siguientes ajustes técnicos críticos:

  • Room 2.7.0-alpha11: Se utiliza esta versión específica para corregir el error de KSP unexpected jvm signature V que ocurre en versiones estables anteriores al compilar con Kotlin 2.1.
  • Hilt 2.54: Versión actualizada para mantener la compatibilidad con el procesamiento de símbolos (KSP) y las nuevas firmas de Room.

📁 Estructura del Proyecto

Sommelier/
├── app/src/main/java/com/example/sommelier/
│   ├── data/           # Capa de Datos: Room, DAOs, Entidades e implementación de Repositorios.
│   ├── di/             # Inyección de Dependencias: Módulos de Hilt para proveer dependencias.
│   ├── domain/         # Capa de Dominio: Casos de uso (UseCases) y Modelos de negocio puros.
│   ├── presentation/   # Capa de UI: Screens, ViewModels, Componibles y Navegación.
│   └── ui/theme/       # Definición estética del proyecto (Colores, Tipografía y Temas).
├── docs/               # Documentación y anexos técnicos del proyecto.
│   ├── Memoria_Tecnica_Sommelier.pdf
│   ├── Anexo_B_Paleta_Colores_Sommelier.pdf
│   └── MANUAL_USUARIO.md
└── README.md           # Documentación principal del proyecto.

✒️ Información Académica

  • Proyecto Final Intermodular
  • Ciclo: 2º DAM (Desarrollo de Aplicaciones Multiplataforma)
  • Autora: Jenifer González Branco

Este proyecto demuestra el dominio de persistencia de datos relacionales, inyección de dependencias avanzada y principios de diseño UX/UI en ecosistemas móviles modernos.

About

Aplicación Android nativa de recomendación de vinos basada en perfil de personalidad. Incluye panel de gestión de bodega para personal de sala. Desarrollada con Jetpack Compose, Clean Architecture, Room, Hilt y Kotlin Flow. Proyecto intermodular DAM — Ucademy

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages