- ✅ Ticket 1.1: Estructura Clean Architecture en backend - ✅ Ticket 1.2: Schemas Zod compartidos - ✅ Ticket 1.3: Refactorización drugs.ts (1362 → 8 archivos modulares) - ✅ Ticket 1.4: Refactorización procedures.ts (3583 → 6 archivos modulares) - ✅ Ticket 1.5: Eliminación de duplicidades (~50 líneas) Cambios principales: - Creada estructura Clean Architecture en backend/src/ - Schemas Zod compartidos en backend/src/shared/schemas/ - Refactorización modular de drugs y procedures - Utilidades genéricas en src/utils/ (filter, validation) - Eliminados scripts obsoletos y documentación antigua - Corregidos errores: QueryClient, import test-error-handling - Build verificado y funcionando correctamente |
||
|---|---|---|
| .. | ||
| config | ||
| database/migrations | ||
| dist | ||
| logs | ||
| node_modules | ||
| scripts | ||
| src | ||
| .env | ||
| CONFIGURAR_PASSWORD.md | ||
| crear-usuario-y-bd.sh | ||
| ENV_TEMPLATE.md | ||
| INSTRUCCIONES_CREAR_USUARIO.md | ||
| package-lock.json | ||
| package.json | ||
| README.md | ||
| README_ESTRUCTURA.md | ||
| tsconfig.json | ||
EMERGES TES - Backend API
Backend para gestión de contenido de EMERGES TES.
🚀 Inicio Rápido
1. Instalar dependencias
cd backend
npm install
2. Configurar variables de entorno
cp .env.example .env
# Editar .env con tus credenciales de PostgreSQL
3. Crear base de datos
npm run db:create
Este comando:
- Crea la base de datos
emerges_tessi no existe - Ejecuta todas las migraciones SQL
- Crea el esquema completo
4. Migrar contenido inicial
npm run migrate
Este comando migra el contenido de src/data/*.ts a PostgreSQL.
5. Iniciar servidor
npm run dev
El servidor estará disponible en http://localhost:3000
📁 Estructura
backend/
├── src/
│ ├── api/ # Endpoints de la API (FASE 2+)
│ ├── db/ # Utilidades de base de datos
│ ├── migrations/ # Migraciones de datos
│ └── utils/ # Utilidades
├── config/
│ └── database.js # Configuración de PostgreSQL
├── scripts/
│ ├── db-create.js # Crear BD y ejecutar migraciones
│ └── migrate-content.js # Migrar contenido TypeScript → PostgreSQL
└── package.json
🔧 Scripts Disponibles
npm run dev- Iniciar servidor en modo desarrollonpm start- Iniciar servidor en producciónnpm run db:create- Crear base de datos y ejecutar migracionesnpm run migrate- Migrar contenido desde TypeScript
📊 Estado de Implementación
✅ FASE 1: Infraestructura Base (Actual)
- ✅ Estructura de directorios
- ✅ Scripts SQL de creación de esquema
- ✅ Configuración de PostgreSQL
- ✅ Scripts de migración básicos
- ✅ Servidor Express básico
⏳ FASE 2: API REST (Próxima)
- Endpoints GET para lectura
- Sincronización de contenido
- Cache y optimización
⏳ FASE 3: Panel Admin (Futuro)
- Autenticación
- Editores de contenido
- Validación clínica
🔐 Seguridad
- Las credenciales de BD deben estar en
.env(no commitear) - JWT para autenticación (FASE 3)
- Validación de entrada en todos los endpoints
📝 Notas
- Este backend es independiente de la app React
- La app React solo LEE contenido (pull-only)
- El panel admin (futuro) será quien ESCRIBA contenido