Sistema experto web de nutrición y entrenamiento desarrollado como proyecto académico. Combina un motor de inferencia basado en reglas con una API en ASP.NET Core, persistencia MariaDB e integraciones opcionales de inteligencia artificial.
Prototipo educativo: las recomendaciones no tienen validación clínica y no sustituyen a profesionales de nutrición, medicina o entrenamiento.
| Ruta | Contenido |
|---|---|
src/SistemaExperto.Core/ |
Hechos, perfiles, reglas, catálogo y motor de inferencia |
src/SistemaExperto.Console/ |
Menú interactivo y demostración de lógica funcional |
src/SistemaExperto.Web/ |
API, autenticación, persistencia, IA y frontend web |
src/SistemaExperto.Web/wwwroot/assets/ |
Recursos utilizados por la interfaz |
levantar_linux.sh |
Preparación de .NET/MariaDB y ejecución en Linux |
levantar_windows.ps1 |
Preparación y ejecución en Windows |
docs/screenshots/ |
Evidencias de los módulos funcionales |
HTML + CSS + JavaScript
│
▼
ASP.NET Core Minimal API
│ │ │
▼ ▼ ▼
Motor MariaDB Servicios IA
experto y sesiones OpenAI/MiniMax
La solución contiene tres proyectos .NET y más de 10,000 líneas de código fuente. El backend expone 33 rutas HTTP y el motor incluye 10 reglas explicables con cláusulas de Horn simuladas.
- Registro, login, logout, perfil y roles.
- Motor local de recomendaciones por hechos y reglas.
- Dashboard de calorías y macronutrientes.
- Platillos diarios, consumo y recetas.
- Listas de compra asociadas a los platillos.
- Rutinas e instrucciones por ejercicio.
- Registro de calorías, distancia, tiempo y puntuación muscular.
- Rachas, metas y logros.
- Chat de alimentación y entrenamiento.
- Panel administrativo con métricas y consola asistida.
- Persistencia de toda la información relevante en MariaDB.
| Área | Tecnología |
|---|---|
| Lenguaje | C# |
| Plataforma | .NET 10 |
| Backend | ASP.NET Core Minimal API |
| Frontend | HTML, CSS y JavaScript |
| Base de datos | MariaDB 11.4 y MySqlConnector 2.4 |
| Lógica | LINQ, hechos, reglas y cláusulas de Horn simuladas |
| Autenticación | Tokens de sesión y cookies HTTP |
| IA opcional | OpenAI y MiniMax |
| Automatización | Bash y PowerShell |
| Plataformas | Linux y Windows |
Nunca guardes claves reales en el repositorio.
cp .env.example .envVariables principales:
MARIADB_CONNECTIONOPENAI_API_KEYOPENAI_MODELMINIMAX_API_KEYMINIMAX_MODELNUTRIMOTION_ADMIN_USERNUTRIMOTION_ADMIN_PASSWORD
La aplicación puede demostrar el motor experto sin configurar proveedores de IA.
bash levantar_base_linux.sh
bash levantar_linux.sh --restartDespués abre http://localhost:5114.
Los scripts pueden descargar localmente el SDK .NET 10 y MariaDB 11.4. Revisa su contenido antes de ejecutarlos.
Con .NET 10 instalado:
dotnet run --project src/SistemaExperto.Console -- --demoEl esquema incluye usuarios, sesiones, perfiles, estado de interfaz, platillos, recetas, listas, rutinas, ejercicios, logros y métricas de uso de IA. No se incluye ninguna base con datos reales.
La versión pública excluye .env, MariaDB, sesiones, logs, binarios y respaldos. También elimina cuentas administrativas fijas. Para un despliegue real todavía se deben añadir HTTPS obligatorio, protección CSRF, rate limiting, gestión robusta de sesiones, auditoría y confirmación de operaciones administrativas.
docs/screenshots contiene inicio, dashboard, recetas, lista de compra, entrenamientos, progreso, racha y chat. Se excluyeron perfil y administración porque las capturas originales contenían información personal.
El proyecto fue concluido como entrega académica funcional. No es un producto médico ni está listo para producción. Entre las mejoras pendientes están separar el frontend del archivo principal, añadir pruebas automatizadas, reforzar seguridad, revisar licencias de recursos y validar contenido con especialistas.
