diff --git a/TECH_SPECS.md b/TECH_SPECS.md deleted file mode 100644 index 058f289..0000000 --- a/TECH_SPECS.md +++ /dev/null @@ -1,168 +0,0 @@ -# Especificaciones Técnicas - Plataforma Economía - -## 1. Arquitectura Frontend - -### Tecnologías Principales -- **Framework**: React 18.2+ -- **Lenguaje**: TypeScript 5.0+ -- **Styling**: Tailwind CSS 3.4+ -- **Build Tool**: Vite 5.0+ -- **Package Manager**: npm - -### Dependencias Clave -```json -{ - "dependencies": { - "react": "^18.2.0", - "react-dom": "^18.2.0", - "react-router-dom": "^6.20.0", - "d3": "^7.8.0", - "recharts": "^2.10.0", - "zustand": "^4.4.0", - "lucide-react": "^0.294.0", - "framer-motion": "^10.16.0" - } -} -``` - -## 2. Componentes Interactivos Planificados - -### 2.1 GraficoCurva (Módulos 2, 3, 4) -```typescript -interface GraficoCurvaProps { - tipo: 'oferta' | 'demanda' | 'equilibrio' | 'costos'; - datos: Punto[]; - interactivo: boolean; - onPuntoClick?: (punto: Punto) => void; -} -``` - -### 2.2 SimuladorPrecios (Módulo 2) -- Sliders para ajustar curvas -- Visualización de excedentes -- Animaciones de transición - -### 2.3 CalculadoraElasticidad (Módulo 3) -- Inputs para valores Q1, Q2, P1, P2 -- Cálculo automático con fórmula -- Visualización del resultado - -### 2.4 JuegoFlujoCircular (Módulo 1) -- Drag & drop de elementos -- Conexiones entre agentes económicos -- Validación de respuestas - -## 3. Estructura de Estado - -```typescript -interface AppState { - progreso: { - modulo1: { completado: number; ejercicios: boolean[] }; - modulo2: { completado: number; ejercicios: boolean[] }; - modulo3: { completado: number; ejercicios: boolean[] }; - modulo4: { completado: number; ejercicios: boolean[] }; - }; - usuario: { - nombre: string; - puntuacion: number; - logros: string[]; - }; - preferencias: { - modoOscuro: boolean; - notificaciones: boolean; - }; -} -``` - -## 4. Configuración Docker - -### Dockerfile -```dockerfile -FROM node:18-alpine AS builder -WORKDIR /app -COPY package*.json ./ -RUN npm ci -COPY . . -RUN npm run build - -FROM nginx:alpine -COPY --from=builder /app/dist /usr/share/nginx/html -COPY nginx.conf /etc/nginx/conf.d/default.conf -EXPOSE 80 -``` - -### docker-compose.yml -```yaml -version: '3.8' -services: - econ-learning: - build: . - ports: - - "3000:80" - restart: unless-stopped -``` - -## 5. Rutas de la Aplicación - -``` -/ → Landing page -/modulos → Lista de módulos -/modulo/1 → Módulo 1: Fundamentos -/modulo/2 → Módulo 2: Oferta/Demanda -/modulo/3 → Módulo 3: Elasticidad -/modulo/4 → Módulo 4: Productor -/ejercicios/:id → Ejercicio específico -/progreso → Dashboard de progreso -``` - -## 6. Diseño UI/UX - -### Paleta de Colores -- Primary: #2563eb (Azul) -- Secondary: #7c3aed (Violeta) -- Success: #10b981 (Verde) -- Warning: #f59e0b (Naranja) -- Error: #ef4444 (Rojo) -- Background: #f8fafc (Gris claro) -- Surface: #ffffff (Blanco) - -### Tipografía -- **Headings**: Inter, 600-700 weight -- **Body**: Inter, 400 weight -- **Monospace**: JetBrains Mono (para fórmulas) - -### Breakpoints -- Mobile: < 640px -- Tablet: 640px - 1024px -- Desktop: > 1024px - -## 7. Optimizaciones Planificadas - -### Performance -- Lazy loading de módulos -- Code splitting por ruta -- Virtualización de listas largas -- Caché de assets con service worker - -### Accesibilidad -- ARIA labels en elementos interactivos -- Soporte para navegación por teclado -- Contraste WCAG AA -- Screen reader compatible - -## 8. Testing Strategy - -### Unit Tests (Vitest) -- Lógica de cálculos económicos -- Hooks personalizados -- Utilidades - -### Integration Tests (React Testing Library) -- Flujo de navegación -- Interacción con gráficos -- Formularios - -### E2E Tests (Playwright) -- Rutas críticas -- Ejercicios completos -- Persistencia de datos diff --git a/TODO.md b/TODO.md deleted file mode 100644 index 764d4ba..0000000 --- a/TODO.md +++ /dev/null @@ -1,117 +0,0 @@ -# Plan de Desarrollo - Plataforma Economía - -## ✅ Completado -- [x] Extracción de contenido de los 4 PDFs -- [x] Análisis de temas y ejercicios potenciales -- [x] Creación de carpeta econ en VPS -- [x] Subida de PDFs al servidor -- [x] Documentación inicial del proyecto - -## 📋 Tareas Pendientes - -### Fase 1: Setup Inicial -- [ ] Inicializar proyecto Vite + React + TypeScript -- [ ] Configurar Tailwind CSS -- [ ] Instalar dependencias principales -- [ ] Configurar estructura de carpetas -- [ ] Setup de ESLint + Prettier -- [ ] Crear Dockerfile -- [ ] Crear docker-compose.yml -- [ ] Configurar Nginx - -### Fase 2: Componentes Base -- [ ] Crear Layout principal con navegación -- [ ] Componente Button con variantes -- [ ] Componente Card para contenido -- [ ] Sistema de progreso/visualización -- [ ] Tema claro/oscuro -- [ ] Componente Quiz base -- [ ] Componente de feedback (correcto/incorrecto) - -### Fase 3: Módulo 1 - Fundamentos -- [ ] Página de introducción -- [ ] Contenido: Definición de economía -- [ ] Contenido: Agentes económicos -- [ ] Contenido: Factores de producción -- [ ] Contenido: Flujo circular -- [ ] Ejercicio 1: Simulador de disyuntivas -- [ ] Ejercicio 2: Quiz de bienes (normal/inferior/etc) -- [ ] Ejercicio 3: Juego del flujo circular (drag & drop) -- [ ] Test del módulo - -### Fase 4: Módulo 2 - Oferta/Demanda -- [ ] Página de introducción -- [ ] Contenido: Ley de la demanda -- [ ] Contenido: Ley de la oferta -- [ ] Contenido: Equilibrio de mercado -- [ ] Contenido: Precios máximos y mínimos -- [ ] Ejercicio 1: Constructor de curvas -- [ ] Ejercicio 2: Simulador de precios intervenidos -- [ ] Ejercicio 3: Identificar shocks (¿qué curva se mueve?) -- [ ] Test del módulo - -### Fase 5: Módulo 3 - Elasticidad -- [ ] Página de introducción -- [ ] Contenido: Tipos de elasticidad -- [ ] Contenido: Fórmulas y cálculos -- [ ] Ejercicio 1: Calculadora de elasticidad paso a paso -- [ ] Ejercicio 2: Clasificar bienes según elasticidad -- [ ] Ejercicio 3: Ejercicios tipo examen -- [ ] Test del módulo - -### Fase 6: Módulo 4 - Productor -- [ ] Página de introducción -- [ ] Contenido: Costos y producción -- [ ] Contenido: Competencia perfecta -- [ ] Ejercicio 1: Simulador de decisión de producción -- [ ] Ejercicio 2: Calculadora de costos -- [ ] Ejercicio 3: Visualización de excedentes -- [ ] Test del módulo - -### Fase 7: Gamificación -- [ ] Sistema de puntuación -- [ ] Logros/badges -- [ ] Barra de progreso global -- [ ] Dashboard de estadísticas -- [ ] Ranking (opcional) - -### Fase 8: Testing y Optimización -- [ ] Tests unitarios (Vitest) -- [ ] Tests de integración -- [ ] Tests E2E con Playwright -- [ ] Optimización de imágenes/assets -- [ ] Performance audit (Lighthouse) -- [ ] Accesibilidad audit - -### Fase 9: Deploy -- [ ] Configurar dominio (si aplica) -- [ ] SSL/TLS -- [ ] CI/CD pipeline -- [ ] Backup automático -- [ ] Monitoreo - -## 🎯 Prioridades - -### Alta Prioridad -1. Setup inicial y estructura base -2. Módulo 1 completamente funcional -3. Componentes de gráficos interactivos -4. Docker funcionando - -### Media Prioridad -5. Módulos 2, 3 y 4 -6. Sistema de progreso -7. Tests básicos - -### Baja Prioridad -8. Gamificación avanzada -9. Tests E2E completos -10. Optimizaciones finales - -## 📝 Notas - -- Usar D3.js para gráficos complejos (curvas personalizables) -- Usar Recharts para gráficos simples (barras, líneas) -- Framer Motion para animaciones suaves -- Zustand para estado global simple -- LocalStorage para persistencia de progreso (fase 1) diff --git a/contexto.md b/contexto.md deleted file mode 100644 index 2fa786b..0000000 --- a/contexto.md +++ /dev/null @@ -1,40 +0,0 @@ -# Contexto del Proyecto - Plataforma de Economía - -## Objetivo -Plataforma educativa para aprender economía mediante 4 módulos interactivos con ejercicios. - -## URLs -- **Producción**: https://eco.cbcren.online (actualmente no funciona por problema de Caddy) -- **Temporal**: http://194.163.191.200:3002 - -## Tech Stack -- **Frontend**: React 18 + TypeScript + Vite + Tailwind CSS -- **Backend**: Go + Gin -- **Base de datos**: PostgreSQL -- **Auth**: JWT -- **Docker**: Docker Compose - -## Estructura -``` -/home/ren/econ/ -├── frontend/ # React app -├── backend/ # Go API -├── docker-compose.yml -├── .env -└── tofix.md # Problema a resolver -``` - -## Estado -- Frontend: ✅ Compila y funciona en puerto 3002 -- Backend: ✅ Compila y funciona en puerto 8080 -- PostgreSQL: ✅ Corriendo en puerto 5433 -- Caddy proxy: ❌ No puede acceder a los contenedores - -## Credenciales -- Admin por defecto: `admin@econ.local` / `admin123` (se crea automáticamente) - -## Archivos importantes -- `/home/ren/econ/README.md` - Documentación general -- `/home/ren/econ/TECH_SPECS.md` - Especificaciones técnicas -- `/home/ren/econ/TODO.md` - Tareas pendientes -- `/home/ren/econ/tofix.md` - Problema actual diff --git a/minimax.md b/minimax.md deleted file mode 100644 index 4542ef4..0000000 --- a/minimax.md +++ /dev/null @@ -1,306 +0,0 @@ -# Propuesta de Expansión Masiva de Ejercicios - -Fecha: 2026-02-12 -Proyecto: Plataforma de Economía Interactiva - -## 📊 Objetivo de Expansión - -**Actual:** 3 ejercicios por módulo (12 total) -**Objetivo:** 20-25 ejercicios por módulo (80-100 total) - -**Filosofía:** Variedad de formatos - quizzes, simuladores, calculadoras, juegos de emparejamiento, gráficos interactivos, problemas aplicados, casos de estudio. - ---- - -## 📚 MÓDULO 1: Fundamentos de Economía (25 ejercicios) - -### 1.1 Introducción a la Economía (5 ejercicios) -1. **Definición de Economía Quiz** - Conceptos básicos y ramas (micro/macro) -2. **Problema Económico Fundamental** - Qué, cómo y para quién producir -3. **Escasez Simulator** - Distribuir 100 recursos entre necesidades -4. **Economía Positiva vs Normativa** - Identificar enunciados -5. **Razonamiento Económico** - Ejercicios de pensamiento lógico-económico - -### 1.2 Sistemas Económicos (4 ejercicios) -6. **Sistemas Económicos Quiz** - Mercado, planificación, mixto -7. **Comparativa de Sistemas** - Tabla comparativa interactiva -8. **Casos de Países** - Identificar sistema según características -9. **Ventajas y Desventajas** - Matching de características - -### 1.3 Frontera de Posibilidades de Producción (5 ejercicios) -10. **FPP Constructor** - Dibujar la curva arrastrando puntos -11. **FPP Analizador** - Identificar puntos: eficiente, ineficiente, inalcanzable -12. **Costo de Oportunidad Calculator** - Calcular pendiente de la FPP -13. **Crecimiento Económico FPP** - Desplazar la curva hacia afuera -14. **FPP con Recursos Especializados** - Curva convexa vs lineal - -### 1.4 Agentes Económicos (5 ejercicios) -15. **Agentes Económicos Quiz** - Familias, empresas, estado, exterior -16. **Roles de Agentes Matching** - Qué hace cada uno -17. **Flujo Circular Básico** - 2 sectores (familias-empresas) -18. **Flujo Circular Ampliado** - 4 sectores con estado y exterior -19. **Decisiones de Agentes** - Escenarios prácticos - -### 1.5 Factores de Producción (4 ejercicios) -20. **Factores de Producción Quiz** - Tierra, trabajo, capital, tecnología -21. **Clasificación de Factores** - Matching con ejemplos -22. **Productividad Calculator** - Output/Input -23. **Mobilidad de Factores** - Facilidad de cambio entre usos - -### 1.6 Costo de Oportunidad (4 ejercicios) -24. **Costo de Oportunidad Cotidiano** - Decisiones personales -25. **Costo de Oportunidad Empresarial** - Proyectos de inversión -26. **Costo Sunk (Hundido)** - Identificar costos irrecuperables -27. **Costos Explicitos vs Implícitos** - Diferenciación - -### 1.7 Ventaja Comparativa (3 ejercicios) -28. **Ventaja Absoluta vs Comparativa** - Diferencias -29. **Calculadora de Ventaja Comparativa** - Tablas de producción -30. **Comercio Internacional Básico** - Beneficios del intercambio - ---- - -## 📈 MÓDULO 2: Oferta, Demanda y Equilibrio (25 ejercicios) - -### 2.1 Demanda (6 ejercicios) -1. **Ley de la Demanda Quiz** - Relación precio-cantidad -2. **Curva de Demanda Constructor** - Dibujar curva descendente -3. **Tabla de Demanda** - Completar cantidades faltantes -4. **Demanda Individual vs Mercado** - Agregar demandas -5. **Factores que Desplazan la Demanda** - 6 factores principales -6. **Desplazamiento vs Movimiento** - Diferenciación clave - -### 2.2 Oferta (5 ejercicios) -7. **Ley de la Oferta Quiz** - Relación precio-cantidad -8. **Curva de Oferta Constructor** - Dibujar curva ascendente -9. **Tabla de Oferta** - Completar cantidades -10. **Factores que Desplazan la Oferta** - Tecnología, costos, etc. -11. **Oferta a Corto vs Largo Plazo** - Elasticidad temporal - -### 2.3 Equilibrio de Mercado (6 ejercicios) -12. **Equilibrio Finder** - Encontrar precio donde Qd=Qo -13. **Equilibrio Gráfico** - Intersección de curvas -14. **Exceso de Demanda (Escasez)** - Cuando P < Pe -15. **Exceso de Oferta (Superávit)** - Cuando P > Pe -16. **Ajuste al Equilibrio** - Cómo el mercado se corrige -17. **Cambios en el Equilibrio** - Desplazamientos de curvas - -### 2.4 Elasticidad de la Demanda (4 ejercicios) -18. **Cálculo de Elasticidad Precio** - Fórmula punto medio -19. **Elasticidad Elástica vs Inelástica** - Clasificación -20. **Factores de Elasticidad** - Sustitutos, lujo/necesidad, tiempo -21. **Elasticidad e Ingreso Total** - Maximización de IT - -### 2.5 Controles de Precio (4 ejercicios) -22. **Precio Máximo (Techo)** - Efectos: escasez, colas -23. **Precio Mínimo (Piso)** - Efectos: superávit -24. **Simulador de Controles** - Ajustar y ver consecuencias -25. **Controles en la Vida Real** - Rent control, salario mínimo - ---- - -## 📊 MÓDULO 3: Elasticidad y Teoría del Consumidor (25 ejercicios) - -### 3.1 Elasticidad Precio de la Demanda (6 ejercicios) -1. **Fórmula de Elasticidad** - %ΔQ / %ΔP -2. **Método del Punto Medio** - Cálculo preciso -3. **Clasificación de Elasticidad** - Elástica, unitaria, inelástica -4. **Elasticidad en la Curva** - Diferente en cada punto -5. **Elasticidad y Rectas** - Relación con pendiente -6. **Decisiones de Precios** - Subir o bajar según elasticidad - -### 3.2 Elasticidad Ingreso (4 ejercicios) -7. **Fórmula de Elasticidad Ingreso** - %ΔQ / %ΔI -8. **Bienes Normales vs Inferiores** - Signo de la elasticidad -9. **Bienes de Lujo vs Necesarios** - Magnitud -10. **Curva de Engel** - Relación ingreso-consumo - -### 3.3 Elasticidad Cruzada (3 ejercicios) -11. **Fórmula Elasticidad Cruzada** - %ΔQx / %ΔPy -12. **Sustitutos vs Complementarios** - Signo positivo/negativo -13. **Grado de Relación** - Magnitud de la elasticidad - -### 3.4 Elasticidad de la Oferta (3 ejercicios) -14. **Elasticidad Precio de Oferta** - %ΔQo / %ΔP -15. **Factores de Elasticidad de Oferta** - Tiempo, capacidad -16. **Oferta a Corto vs Largo Plazo** - Disponibilidad de factores - -### 3.5 Utilidad (6 ejercicios) -17. **Utilidad Total vs Marginal** - Conceptos básicos -18. **Ley de Utilidad Marginal Decreciente** - Ejemplos prácticos -19. **Maximización de Utilidad** - Igualar UMg/P -20. **Canasta Óptima** - Combinación de bienes -21. **Paradoja del Agua y Diamantes** - Valor total vs marginal -22. **Curvas de Indiferencia** - Mapa básico - -### 3.6 Restricción Presupuestaria (3 ejercicios) -23. **Recta Presupuestaria** - Dibujar según ingreso y precios -24. **Cambios en la Restricción** - Más ingreso, cambio de precios -25. **Óptimo del Consumidor** - Tangencia con curvas de indiferencia - ---- - -## 🏭 MÓDULO 4: Teoría del Productor (25 ejercicios) - -### 4.1 Función de Producción (5 ejercicios) -1. **Función de Producción** - Q = f(K,L) -2. **Corto vs Largo Plazo** - Factores fijos y variables -3. **Producto Total** - Output máximo -4. **Producto Marginal** - ΔQ/ΔL -5. **Producto Medio** - Q/L - -### 4.2 Ley de Rendimientos (3 ejercicios) -6. **Ley de Rendimientos Decrecientes** - Crecimiento a tasa decreciente -7. **Etapas de Producción** - I, II (racional), III -8. **Productor Racional** - Operar en Etapa II - -### 4.3 Costos a Corto Plazo (6 ejercicios) -9. **Costos Fijos vs Variables** - Identificación -10. **Costo Total, Medio, Marginal** - Fórmulas y cálculos -11. **Tabla de Costos** - Completar valores faltantes -12. **Curvas de Costo** - Dibujar CF, CV, CT -13. **Costos Medios** - CFMe, CVMe, CMe -14. **Relación entre Curvas** - CMg corta a CMe en su mínimo - -### 4.4 Costos a Largo Plazo (3 ejercicios) -15. **Curva de Costo Largo Plazo** - Envuelve corto plazo -16. **Economías de Escala** - Costo medio decreciente -17. **Diseconomías de Escala** - Costo medio creciente - -### 4.5 Ingresos (3 ejercicios) -18. **Ingreso Total** - IT = P x Q -19. **Ingreso Marginal** - IMg = ΔIT/ΔQ -20. **Ingreso en Competencia Perfecta** - IMg = P - -### 4.6 Maximización de Beneficios (5 ejercicios) -21. **Beneficio Total** - BT = IT - CT -22. **Regla IMg = CMg** - Condición de maximización -23. **Punto de Cierre** - P < CVMe (corto plazo) -24. **Punto de Equilibrio** - BT = 0, IT = CT -25. **Decisión de Producción** - Producir o no según beneficios - ---- - -## 🎯 ESTRUCTURA SUGERIDA POR EJERCICIO - -Cada ejercicio debe incluir: -- **Teoría previa** (1-2 párrafos explicativos) -- **Ejemplo resuelto** (guiado paso a paso) -- **Ejercicio principal** (interactivo) -- **3-5 preguntas de práctica** (varios intentos) -- **Explicación detallada** de respuestas incorrectas -- **Fórmulas de referencia** (sidebar) - ---- - -## 📅 PLAN DE IMPLEMENTACIÓN - -### Fase 1: Fundamentos (Semanas 1-2) -- Módulo 1: Ejercicios 1-10 (base sólida) -- Módulo 2: Ejercicios 1-8 (demanda/oferta) - -### Fase 2: Equilibrio y Elasticidad (Semanas 3-4) -- Módulo 2: Ejercicios 9-17 (equilibrio) -- Módulo 3: Ejercicios 1-13 (elasticidades) - -### Fase 3: Consumidor y Productor (Semanas 5-6) -- Módulo 3: Ejercicios 14-25 (utilidad) -- Módulo 4: Ejercicios 1-12 (producción) - -### Fase 4: Costos y Mercados (Semanas 7-8) -- Módulo 4: Ejercicios 13-25 (costos y beneficios) -- Revisión y pulido de todos los ejercicios - -**Total: 8 semanas para 100 ejercicios** - ---- - -## ✨ NICE TO HAVE (Personalización) - -### Personalización Visual -1. **Tema Oscuro/Claro** - Toggle global -2. **Tamaño de Fuente** - Pequeño, Medio, Grande -3. **Contraste Alto** - Accesibilidad - ---- - -## 📊 GAMIFICACIÓN PROPUESTA - -### Sistema de Logros (Badges) -**Por Módulo:** -- "Explorador de Módulo X" - Completar 5 ejercicios -- "Experto en Módulo X" - Completar 15 ejercicios -- "Maestro de Módulo X" - Completar todos los ejercicios - -**Generales:** -- "Primeros Pasos" - Completar primer ejercicio -- "Dedicado" - 10 ejercicios en un día -- "Perseverante" - 50 ejercicios totales -- "Economista" - 100 ejercicios completados -- "Perfecto" - 10 ejercicios con 100% - -### Niveles de Usuario -- **Novato** (0-999 pts) - Gris -- **Estudiante** (1000-2999 pts) - Bronce -- **Avanzado** (3000-5999 pts) - Plata -- **Experto** (6000-9999 pts) - Oro -- **Maestro** (10000+ pts) - Diamante - -### Progreso -- Barra de progreso por módulo (0-100%) -- Contador de ejercicios completados/total -- Tiempo estimado para completar módulo - ---- - -## 🎨 DISEÑO DE EJERCICIOS - -### Tipos de Interacción -1. **Quiz Clásico** - 4 opciones, 1 correcta -2. **Verdadero/Falso** - Con explicación -3. **Completar Espacios** - Enunciados con blanks -4. **Matching** - Emparejar columnas -5. **Arrastrar y Soltar** - Ordenar, clasificar -6. **Calculadora** - Ingresar número, validar -7. **Gráfico Interactivo** - Dibujar, ajustar sliders -8. **Simulador** - Múltiples variables, ver resultado -9. **Caso de Estudio** - Escenario real, analizar -10. **Problema Paso a Paso** - Wizard guiado - -### Feedback Inmediato -- ✅ Verde con animación al acertar -- ❌ Rojo con explicación al errar -- 💡 Pista disponible después de 2 intentos -- 📖 "Aprender más" lleva a teoría relacionada - ---- - -## 📈 MÉTRICAS DE ÉXITO - -- **Ejercicios disponibles:** 100 -- **Tiempo promedio por ejercicio:** 3-5 minutos -- **Tiempo total del curso:** 5-8 horas -- **Tasa de completitud por módulo:** >50% -- **Usuarios que completan 4 módulos:** >30% -- **Satisfacción:** Encuesta post-módulo (1-5 estrellas) - ---- - -## 💡 RECOMENDACIONES - -1. **No saturar:** Máximo 25-30 ejercicios visibles a la vez, organizar por secciones -2. **Progresión clara:** De fácil a difícil dentro de cada tema -3. **Variación:** Alternar tipos de ejercicios para mantener engagement -4. **Contexto real:** Usar ejemplos de Argentina/Latinoamérica cuando sea posible -5. **Repetición espaciada:** Algoritmo que sugiera repasar ejercicios antiguos - ---- - -## 🚀 PRÓXIMOS PASOS INMEDIATOS - -1. **Priorizar Módulo 1:** Crear 8-10 ejercicios base (más fácil para usuarios nuevos) -2. **Template de ejercicios:** Crear 2-3 templates reutilizables (quiz, calculadora, gráfico) -3. **Sistema de progreso:** Asegurar que el backend soporte 100+ ejercicios -4. **Navegación:** Rediseñar para manejar muchos ejercicios (paginación/filtros) - -**Meta inicial alcanzable:** 40 ejercicios (10 por módulo) en 2 semanas. diff --git a/tofix.md b/tofix.md deleted file mode 100644 index e37d467..0000000 --- a/tofix.md +++ /dev/null @@ -1,47 +0,0 @@ -# Problema: Caddy no puede acceder a los contenedores de econ - -## Estado actual - -Los contenedores están corriendo: -- `econ-postgres` (PostgreSQL) -- `econ-backend` (Go API, puerto 8080) -- `econ-frontend` (React/Nginx, puerto 80) - -Todos están conectados a la red `caddy` pero Caddy no puede resolver sus nombres. - -## Síntoma - -``` -dial tcp: lookup econ-frontend on 127.0.0.11:53: no such host -``` - -## Qué se intentó - -1. Usar nombres de contenedor en Caddy (econ-frontend:80) - NO funciona -2. Usar IP del host (194.163.191.200:3002) - NO funciona (timeout) -3. Usar IP del contenedor en Caddy (172.20.0.x) - NO funciona -4. network_mode: host - Rompió nginx por depender de "backend" - -## Cómo funciona Gitea (y funciona) - -- Gitea está en red `gitea_gitea-network` -- Caddy tiene: `reverse_proxy gitea-gitea-1:3000` -- Funciona correctamente - -## Solución a probar - -1. Crear una red específica para econ (ej: `econ-network`) -2. Conectar los 3 contenedores a esa red -3. Actualizar Caddy para usar los nombres de contenedor desde esa red - -O alternativamente: -- Usar `extra_hosts` en docker-compose para agregar el host al contenedor de Caddy -- Usar IP estática en la red de Caddy - -## Para probar inmediatamente - -Desde la VPS (fuera de contenedores): -- `curl http://localhost:3002` funciona -- `curl http://localhost:8080/health` funciona - -El problema es exclusivamente la comunicación Caddy → econ-containers.