Find a file
2026-02-27 15:37:22 +01:00
.github/workflows feat: añadir script de limpieza del proyecto 2025-12-23 10:04:24 +01:00
admin-panel docschore: cleanup, update deps, refactor data schemas 2026-02-27 15:37:22 +01:00
backend docschore: cleanup, update deps, refactor data schemas 2026-02-27 15:37:22 +01:00
coverage/.tmp docschore: cleanup, update deps, refactor data schemas 2026-02-27 15:37:22 +01:00
database/migrations Actualizar herramientas y contenidos 2026-01-19 09:10:16 +01:00
dist docschore: cleanup, update deps, refactor data schemas 2026-02-27 15:37:22 +01:00
docs docschore: cleanup, update deps, refactor data schemas 2026-02-27 15:37:22 +01:00
logs refactor: Fase 1 - Clean Architecture, refactorización modular y eliminación de duplicidades 2026-01-25 21:09:47 +01:00
medios_faltantes refactor: Fase 1 - Clean Architecture, refactorización modular y eliminación de duplicidades 2026-01-25 21:09:47 +01:00
node_modules docschore: cleanup, update deps, refactor data schemas 2026-02-27 15:37:22 +01:00
public refactor: Fase 1 - Clean Architecture, refactorización modular y eliminación de duplicidades 2026-01-25 21:09:47 +01:00
scorm refactor: Fase 1 - Clean Architecture, refactorización modular y eliminación de duplicidades 2026-01-25 21:09:47 +01:00
scripts docschore: cleanup, update deps, refactor data schemas 2026-02-27 15:37:22 +01:00
src docschore: cleanup, update deps, refactor data schemas 2026-02-27 15:37:22 +01:00
-quality Actualizar herramientas y contenidos 2026-01-19 09:10:16 +01:00
.ai-assistant.md docschore: cleanup, update deps, refactor data schemas 2026-02-27 15:37:22 +01:00
.cursorrules docschore: cleanup, update deps, refactor data schemas 2026-02-27 15:37:22 +01:00
.dockerignore docschore: cleanup, update deps, refactor data schemas 2026-02-27 15:37:22 +01:00
.gitignore chore: actualizar .gitignore para excluir builds y node_modules 2026-01-25 21:11:47 +01:00
auditoria-assets-completa.md Actualizar herramientas y contenidos 2026-01-19 09:10:16 +01:00
bun.lockb feat: Aplicación completa Manual TES Digital 2025-12-17 12:12:10 +01:00
components.json feat: Aplicación completa Manual TES Digital 2025-12-17 12:12:10 +01:00
DEPLOY_LAB.md docschore: cleanup, update deps, refactor data schemas 2026-02-27 15:37:22 +01:00
docker-compose.dev.yml docschore: cleanup, update deps, refactor data schemas 2026-02-27 15:37:22 +01:00
docker-compose.lab.yml docschore: cleanup, update deps, refactor data schemas 2026-02-27 15:37:22 +01:00
docker-compose.prod.yml feat: añadir script de limpieza del proyecto 2025-12-23 10:04:24 +01:00
docker-compose.yml feat: añadir script de limpieza del proyecto 2025-12-23 10:04:24 +01:00
Dockerfile fix: solución completa para vendor-other en Docker/producción 2026-01-02 19:17:26 +01:00
ecosystem.config.cjs fix: Correcciones críticas y mejoras PWA 2025-12-23 11:42:44 +01:00
env.example feat: organizar imágenes para PWA y adaptar MarkdownViewer 2025-12-19 21:14:20 +01:00
eslint.config.js feat: Aplicación completa Manual TES Digital 2025-12-17 12:12:10 +01:00
index.html docschore: cleanup, update deps, refactor data schemas 2026-02-27 15:37:22 +01:00
manifest.json Actualizar herramientas y contenidos 2026-01-19 09:10:16 +01:00
MANIFESTO_MEDIOS.json Actualizar herramientas y contenidos 2026-01-19 09:10:16 +01:00
MEDIOS_REALES_NECESARIOS_FILTRADO.md Actualizar herramientas y contenidos 2026-01-19 09:10:16 +01:00
package-lock.json refactor: Fase 1 - Clean Architecture, refactorización modular y eliminación de duplicidades 2026-01-25 21:09:47 +01:00
package.json docschore: cleanup, update deps, refactor data schemas 2026-02-27 15:37:22 +01:00
postcss.config.js feat: Aplicación completa Manual TES Digital 2025-12-17 12:12:10 +01:00
PROMPTS_MEDIOS_FALTANTES.md Actualizar herramientas y contenidos 2026-01-19 09:10:16 +01:00
README.md docschore: cleanup, update deps, refactor data schemas 2026-02-27 15:37:22 +01:00
README_ARCHITECTURE.md docschore: cleanup, update deps, refactor data schemas 2026-02-27 15:37:22 +01:00
README_DEV.md docschore: cleanup, update deps, refactor data schemas 2026-02-27 15:37:22 +01:00
README_FUTURE.md docschore: cleanup, update deps, refactor data schemas 2026-02-27 15:37:22 +01:00
README_TODO.md docschore: cleanup, update deps, refactor data schemas 2026-02-27 15:37:22 +01:00
SPEC.md docschore: cleanup, update deps, refactor data schemas 2026-02-27 15:37:22 +01:00
tailwind.config.ts feat: Aplicación completa Manual TES Digital 2025-12-17 12:12:10 +01:00
tsconfig.app.json docschore: cleanup, update deps, refactor data schemas 2026-02-27 15:37:22 +01:00
tsconfig.json feat: Aplicación completa Manual TES Digital 2025-12-17 12:12:10 +01:00
tsconfig.node.json feat: Aplicación completa Manual TES Digital 2025-12-17 12:12:10 +01:00
vite-plugin-fix-html-references.ts fix: plugin para corregir referencias en index.html con prefijos numéricos 2026-01-02 19:54:36 +01:00
vite-plugin-manifest.ts feat: Corregir rutas PWA para GitHub Pages y añadir listado de medios faltantes 2025-12-17 16:19:37 +01:00
vite-plugin-strip-preload-warning.ts docschore: cleanup, update deps, refactor data schemas 2026-02-27 15:37:22 +01:00
vite.config.ts docschore: cleanup, update deps, refactor data schemas 2026-02-27 15:37:22 +01:00

EMERGES TES - Guía Digital de Protocolos de Emergencias

Aplicación web progresiva (PWA) diseñada como herramienta de referencia rápida para Técnicos de Emergencias Sanitarias (TES) y profesionales de emergencias médicas.


🎯 Objetivo Funcional

EMERGES TES es un socio cognitivo que reduce la carga cognitiva en emergencias médicas proporcionando:

  • Acceso rápido a información crítica (< 2 clics)
  • Protocolos operativos estructurados (RCP, vía aérea, shock, etc.)
  • Vademécum de fármacos con dosis, indicaciones y contraindicaciones
  • Calculadoras médicas (Glasgow, perfusiones, dosis pediátricas)
  • Guías formativas asociadas a protocolos
  • Funcionalidad offline-first (funciona sin conexión)
  • Diseño optimizado para uso bajo presión y estrés

No es:

  • Un sistema de diagnóstico automático
  • Una herramienta de IA que toma decisiones clínicas
  • Un sustituto de la formación reglada del profesional
  • Un reemplazo del criterio clínico

📊 Estado Actual del Proyecto

Estado: En desarrollo activo

Completado

  • Frontend PWA: React 19 + TypeScript, funcional con Service Worker
  • Backend API: Express + PostgreSQL con Clean Architecture
  • Protocolos: 50+ protocolos operativos estructurados
  • Fármacos: 100+ fármacos con dosis y especificaciones
  • Guías formativas: Guías de refuerzo asociadas a protocolos
  • Herramientas clínicas: Checklists, calculadoras, pathways
  • Validación médica: Workflow completo de revisión y aprobación
  • Glosario: Backend completo con ~74 términos migrados
  • Medios: Sistema de gestión de imágenes/vídeos/documentos
  • Tests: Tests unitarios backend (servicios) y tests integración API

⚠️ En Progreso / Pendiente

  • Frontend glosario: La app aún no consume GET /api/glossary (usa datos locales)
  • Cobertura frontend: Objetivo 80% (en aumento)
  • Contenido: Categoría "Escena" vacía en protocolos (ver docs/CONTENIDO_FALTANTE.md)

Documentación detallada: Ver docs/QUE_FALTA.md y docs/CONTENIDO_FALTANTE.md


⚠️ ACLARACIÓN FUNDAMENTAL: ¿Qué son los "Tickets"?

Los tickets NO son funcionalidad de negocio

IMPORTANTE: En este proyecto, los "tickets" (TICKET-001, TICKET-002, etc.) NO son una funcionalidad de negocio.

  • NO existe un sistema de tickets de soporte, incidencias o solicitudes de usuarios
  • NO hay entidades llamadas "tickets" en el código
  • NO hay lógica de negocio asociada a tickets

Los tickets son tareas técnicas de desarrollo

Los tickets son únicamente una forma de dividir, organizar y seguir las tareas pendientes de desarrollo de la aplicación.

  • Son equivalentes a issues o tickets técnicos de JIRA / GitHub
  • Representan tareas técnicas o pasos de desarrollo
  • Sirven para planificación y seguimiento del trabajo
  • Están documentados en docs/QUE_FALTA.md y docs/BACKLOG_MICRO_TICKETS.md

Ejemplo: TICKET-013 significa "Implementar ValidationService para workflow de validación médica" (tarea técnica completada).

Entidades reales del dominio

Las entidades reales del dominio de la aplicación son:

  • ContentItem: Protocolos, guías, manuales, checklists
  • Drug: Fármacos con especificaciones técnicas
  • GlossaryTerm: Términos médicos del glosario
  • MediaResource: Imágenes, vídeos, documentos
  • MedicalReview: Revisiones médicas de contenido

Ninguna de estas entidades se llama "ticket" ni tiene relación con tickets.

Si en el futuro se añade un sistema de tickets de negocio

Si en el futuro se añade un sistema de tickets de soporte/incidencias como nueva funcionalidad, deberá tratarse como una FEATURE independiente, no implementada actualmente.


🛠️ Stack Tecnológico

Frontend

  • React 19 + TypeScript 5.8
  • Vite 7 - Build tool
  • Tailwind CSS 3.4 + shadcn/ui - UI Framework
  • React Router 6.3 - Navegación SPA
  • PWA - Service Worker + Manifest
  • Vitest - Testing

Backend

  • Node.js + TypeScript
  • Express 4.18 - Framework web
  • PostgreSQL - Base de datos relacional
  • Redis - Caché (opcional)
  • Zod - Validación de esquemas
  • Vitest + Supertest - Testing

Arquitectura

  • Clean Architecture en backend (Domain → Application → Infrastructure → Presentation)
  • Arquitectura funcional React en frontend
  • Type Safety estricto (sin any)

🚀 Instalación y Ejecución

Requisitos previos

  • Node.js 20+
  • PostgreSQL 14+
  • Redis (opcional, para caché)

Instalación

# Clonar repositorio
git clone [url-del-repositorio]
cd guia-tes

# Instalar dependencias frontend
npm install

# Instalar dependencias backend
cd backend
npm install
cd ..

Ejecución

Solo frontend (desarrollo)

npm run dev
# Abre en http://localhost:8096

Frontend + Backend local (con Docker)

npm run dev:local
# Inicia PostgreSQL + Redis en Docker
# Frontend: http://localhost:8096
# Backend: http://localhost:3000

Backend solo

cd backend
npm run dev
# Backend en http://localhost:3000

Build producción

# Frontend
npm run build

# Backend
cd backend
npm run build

Documentación detallada: Ver docs/DESPLIEGUE_LOCAL.md para configuración completa con Docker.


📚 Documentación

Documentación principal

  • SPEC.md - Especificación maestra del proyecto (fuente de verdad)
  • .cursorrules - Reglas de desarrollo y arquitectura
  • docs/QUE_FALTA.md - Estado de tickets técnicos y tareas pendientes
  • docs/CONTENIDO_FALTANTE.md - Contenido faltante (protocolos, guías, glosario)

Documentación para desarrolladores

  • README_DEV.md - Reglas de desarrollo y principios
  • README_ARCHITECTURE.md - Arquitectura del sistema
  • README_TODO.md - Tareas pendientes con prioridades

Documentación técnica

  • docs/BACKLOG_MICRO_TICKETS.md - Backlog de fases ejecutadas
  • docs/ANDRAGOGIA_STRESS_READY_112.md - Principios de diseño UX
  • docs/CHECKLIST_ANTES_ACEPTAR_CAMBIOS.md - Checklist de calidad

🔄 Evolución de la Arquitectura

Nota importante: La arquitectura puede evolucionar según las necesidades del proyecto.

  • Las decisiones arquitectónicas están documentadas en SPEC.md y .cursorrules
  • Cualquier cambio arquitectónico debe documentarse explícitamente
  • Se prioriza la mantenibilidad y claridad del código

📄 Licencia

[Especificar licencia si aplica]


👥 Contribución

Este proyecto está en desarrollo activo. Para contribuir:

  1. Leer README_DEV.md para reglas de desarrollo
  2. Revisar README_ARCHITECTURE.md para entender la arquitectura
  3. Consultar README_TODO.md para tareas pendientes
  4. Seguir las reglas definidas en .cursorrules

Desarrollado para Técnicos de Emergencias Sanitarias