# Gamilit - Plataforma de Gamificacion Educativa **Version:** 1.0.0 **Fecha:** 2025-12-18 --- ## Descripcion Gamilit es una plataforma de gamificacion para el aprendizaje. Permite crear cursos interactivos con elementos de juego como puntos, insignias, niveles y tablas de clasificacion. --- ## Quick Start ```bash # Crear redes Docker (si no existen) cd ../../control-plane ./devtools/docker/networks/create-networks.sh gamilit # Levantar servicios cd ../projects/gamilit/docker docker-compose up -d # Ver logs docker-compose logs -f ``` --- ## URLs de Desarrollo | Servicio | URL | |----------|-----| | API | http://api.gamilit.localhost | | Web | http://gamilit.localhost | | WebSocket | ws://ws.gamilit.localhost | --- ## Estructura ``` gamilit/ | +-- apps/ | +-- backend/ # API NestJS | +-- frontend/ # React + Vite | +-- docker/ | +-- docker-compose.yml | +-- docker-compose.dev.yml | +-- database/ | +-- schemas/ # DDL | +-- migrations/ # Cambios incrementales | +-- seeds/ # Datos iniciales | +-- orchestration/ | +-- inventarios/ # Estado de componentes | +-- checklists/ # Validaciones | +-- docs/ # Documentacion ``` --- ## Stack Tecnologico ### Backend - Runtime: Node.js 20 - Framework: NestJS - Database: PostgreSQL 15 - Cache: Redis - Auth: JWT ### Frontend - Framework: React 18 - Build: Vite - Styling: Tailwind CSS - State: Zustand + TanStack Query --- ## Modulos ### Core - **Auth**: Autenticacion y autorizacion - **Users**: Gestion de usuarios ### Gamification - **Courses**: Cursos y lecciones - **Progress**: Progreso del estudiante - **Achievements**: Logros e insignias - **Leaderboards**: Tablas de clasificacion --- ## Variables de Entorno ### Backend | Variable | Descripcion | Default | |----------|-------------|---------| | PORT | Puerto del servidor | 3000 | | DATABASE_URL | URL de PostgreSQL | - | | REDIS_URL | URL de Redis | redis://localhost:6379 | | JWT_SECRET | Secret para JWT | - | | JWT_EXPIRES_IN | Expiracion de tokens | 1d | ### Frontend | Variable | Descripcion | Default | |----------|-------------|---------| | VITE_API_URL | URL del API | http://api.gamilit.localhost | | VITE_WS_URL | URL de WebSocket | ws://ws.gamilit.localhost | --- ## Desarrollo ### Backend ```bash cd apps/backend npm install npm run dev ``` ### Frontend ```bash cd apps/frontend npm install npm run dev ``` ### Tests ```bash # Backend cd apps/backend && npm test # Frontend cd apps/frontend && npm test # E2E npm run test:e2e ``` --- ## Deployment Ver [docs/deployment.md](./docs/deployment.md) --- ## Contribucion 1. Leer directivas SIMCO en control-plane 2. Verificar service.descriptor.yml actualizado 3. Ejecutar validaciones antes de commit 4. Crear PR con descripcion clara --- **Mantenido por:** Equipo Gamilit **Control Plane:** workspace-v1/control-plane