Skip to content

LuisDavidTF/Cacomi

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

242 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🍽️ Cacomi — Planificador de comidas

Cacomi es una aplicación web moderna e inteligente para planificar comidas, gestionar tu despensa y generar recetas con IA. Nuestra misión es simplificar la alimentación saludable mediante tecnología de punta, facilitando el descubrimiento de recetas comunitarias y la organización semanal.

Note

Visión de Futuro: Estamos evolucionando para convertirnos en un ecosistema completo de bienestar. Próximamente, los planes de comida personalizados podrán ser preparados por chefs certificados y entregados directamente a tu puerta.

Note

Lanzamiento Oficial: La plataforma ha completado su fase beta inicial. Explora, planifica y cocina con la potencia de Google Gemini.

✨ Features

  • 🤖 IA Generativa de Recetas — Genera recetas personalizadas usando Google Gemini (vía API propia en Koyeb).
  • 📦 Gestión de Despensa (Pantry) — Agrega, edita y elimina ingredientes con sincronización en tiempo real.
  • 📋 CRUD de Recetas — Crea, edita, consulta y elimina tus recetas favoritas en una comunidad vibrante.
  • 🔐 Autenticación — Registro e inicio de sesión seguros con sesiones basadas en cookies JWT (httpOnly), incluyendo soporte para Google OAuth.
  • 🛡️ Panel de Admin (Stealth Mode + Manual Training) — Gestión administrativa oculta tras una ruta secreta. Incluye sistema auditado para entrenar la IA, revisar logs y moderar usuarios.
  • 📅 Planificador Universal Interactivo — Organiza tus menús semanales con drag-and-drop optimizado para móviles/tablets (Pointer Events) y persistencia offline completa vía IndexedDB.
  • 🛒 Lista de Compras Inteligente — Generación automática de listas de compras consolidadas semánticamente con flujo de compra integrado hacia la alacena.
  • 🏠 Marketplace (Próximamente) — Conexión directa con chefs para la preparación y entrega de menús personalizados.
  • 📱 PWA — Instalable en móvil y escritorio. Soporte offline con Service Worker y sincronización local.
  • 🌙 Modo Oscuro — Tema claro/oscuro con persistencia de preferencia.
  • ⚡ SSR + Edge Ready — Renderizado en servidor con Astro 6.
  • 🔄 Bucle de Descubrimiento — Sistema de recomendaciones de recetas similares curadas inteligentemente para aumentar el engagement.
  • 💰 Monetización Premium — Integración nativa con Google AdSense mediante contenedores de alto impacto visual.
  • 🗺️ SEO — Sitemap dinámico, canonical URLs, Open Graph y meta tags optimizados.

🛠️ Tech Stack

Capa Tecnología
Framework Astro 6 (SSR, Islands Architecture)
UI React 19 (Islands)
Estilos Tailwind CSS 4
Gráficos Recharts
Componentes shadcn/ui + Radix UI
Estado Zustand 5
Base de datos local Dexie.js (IndexedDB)
Iconos Lucide React
PWA @vite-pwa/astro

🚀 Getting Started

Instalación

git clone https://github.com/LuisDavidTF/smart-recipe-planner.git
cd smart-recipe-planner
npm install

Variables de Entorno (.env.local)

Important

Seguridad Crítica: Nunca uses el prefijo PUBLIC_ para la URL de la API o el PIN de administración. Esto evita que los secretos se filtren al bundle de Javascript del cliente.

# URL de la API backend (Privada - Accesible vía BFF Proxy)
BACKEND_URL=https://api.tu-sitio.com

# Seguridad Administrativa (Privada)
ADMIN_PIN=1234 # Requerido para elevar privilegios en el panel de control
ADMIN_PATH_PREFIX=secreto-admin # Ruta oculta para entrar al panel

# URL base de la app
PUBLIC_SITE_URL=https://tu-sitio.com

📁 Estructura del Proyecto (Módulos Recientes)

  • astro_src/components/admin: Módulo de administración, incluye ReviewLogsBoard para auditoría de IA y paneles de infraestructura.
  • astro_src/lib/services: Capa de abstracción para servicios REST (Auth, Admin, Pantry).
  • astro_src/middleware.ts: Gestión de seguridad basada en JWT Claims (ROLE_ADMIN), Stealth Mode y protección de rutas.
  • src/pages/api/proxy: Backend-for-Frontend (BFF) que actúa como proxy para ocultar la infraestructura real.

🛡️ Seguridad y Auditoría

  • BFF Proxy Pattern: Ninguna llamada directa a la API backend ocurre desde el navegador; todas pasan por un proxy seguro en el servidor.
  • Role-Based Access Control (RBAC): El Dashboard de Admin es inaccesible sin el claim ROLE_ADMIN.
  • Manual Training Loop: Los logs de la IA no se inyectan directamente al modelo; pasan por una fase de revisión humana.
  • Headers de Seguridad: CSP, X-Frame-Options, HSTS y más, aplicados globalmente vía Middleware.

📜 Legal


🤝 Contributing

¡Las contribuciones son bienvenidas!

  1. Fork del proyecto
  2. Crea tu rama: git checkout -b feat/mi-feature
  3. Commit: git commit -m 'feat(scope): descripción' (Conventional Commits)
  4. Push: git push origin feat/mi-feature
  5. Abre un Pull Request

About

Cacomi is a menu planning app with integrated AI to suggest recipes to include in your weekly meal plan based on your nutritional goals and the ingredients you have at home.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors