How rivasnico356-png/colorrectal-sim works
Colorrectal-Sim es una plataforma educativa en español para explorar casos de cáncer colorrectal y recibir explicaciones de un tutor de IA. El flujo visible va desde el registro o inicio de sesión en React, por el cliente API y las rutas FastAPI, hasta el catálogo de casos; el tutor ofrece explicaciones con respaldo. El README también describe simulación por etapas, progreso y niveles, compartir avances con autorización y exportación seudonimizada, aunque no todos esos módulos tienen implementación visible en los extractos. Las relaciones no documentadas en código se atribuyen al README.
Main entry points: usuarios/router.py Rutas de usuario · tutor/router.py Ruta del tutor · App.tsx Aplicación React · main.py Entrada FastAPI
Components 25
Experiencia web
- Aplicación React
frontend/src/App.tsx - Registro y autorizaciones
frontend/src/paginas/Registro.tsx - Inicio de sesión
frontend/src/paginas/Ingreso.tsx - Vista de catálogo
frontend/src/paginas/Catalogo.tsx - Cliente API
frontend/src/api.ts
API y acceso
- Entrada FastAPI
backend/app/main.py - Rutas de usuario
backend/app/modules/usuarios/router.py - Registro e ingreso
backend/app/modules/usuarios/service.py - Esquemas de usuario
backend/app/modules/usuarios/schemas.py - Autenticación y roles
backend/app/core/deps.py - Hash y JWT
backend/app/core/security.py
Aprendizaje clínico
- Catálogo de casos
backend/app/modules/casos/router.py - Simulación por etapas
backend/app/modules/casos - Progreso y niveles
backend/app/modules/casos - Ruta del tutor
backend/app/modules/tutor/router.py - Servicio tutor IA
backend/app/modules/tutor/servicio.py - Prompt educativo
backend/app/modules/tutor/prompt.py - Proveedores IA
backend/app/modules/tutor/proveedores.py
Datos y privacidad
- Sesiones PostgreSQL
backend/app/core/db.py - Base PostgreSQL
db/01_schema.sql - Avance compartido
db/01_schema.sql - Exportación seudonimizada
db/01_schema.sql
Other components
- Persona usuaria
- Servicio IA externo
- Profesional de salud
Connections 33
- Persona usuaria → Aplicación React: usa
README.md - Aplicación React → Inicio de sesión: muestra
frontend/src/App.tsx - Aplicación React → Registro y autorizaciones: muestra
frontend/src/App.tsx - Aplicación React → Vista de catálogo: muestra
frontend/src/App.tsx - Registro y autorizaciones → Cliente API: envía registro
frontend/src/paginas/Registro.tsx - Inicio de sesión → Cliente API: solicita ingreso
frontend/src/paginas/Ingreso.tsx - Vista de catálogo → Cliente API: consulta casos
frontend/src/paginas/Catalogo.tsx - Cliente API → Entrada FastAPI: llama API
README.md - Entrada FastAPI → Rutas de usuario: registra rutas
backend/app/main.py - Entrada FastAPI → Catálogo de casos: registra rutas
backend/app/main.py - Entrada FastAPI → Ruta del tutor: registra rutas
backend/app/main.py - Rutas de usuario → Registro e ingreso: invoca
backend/app/modules/usuarios/router.py - Rutas de usuario → Esquemas de usuario: valida con
backend/app/modules/usuarios/router.py - Rutas de usuario → Autenticación y roles: protege perfil
backend/app/modules/usuarios/router.py - Rutas de usuario → Sesiones PostgreSQL: obtiene sesión
backend/app/modules/usuarios/router.py - Registro e ingreso → Hash y JWT: usa hash y JWT
backend/app/modules/usuarios/service.py - Registro e ingreso → Base PostgreSQL: lee y escribe
backend/app/modules/usuarios/service.py - Autenticación y roles → Hash y JWT: lee token
backend/app/core/deps.py - Catálogo de casos → Autenticación y roles: exige usuario
backend/app/modules/casos/router.py - Catálogo de casos → Sesiones PostgreSQL: consulta casos
backend/app/modules/casos/router.py - Sesiones PostgreSQL → Base PostgreSQL: conecta
backend/app/core/db.py - Catálogo de casos → Simulación por etapas: permite explorar
README.md - Simulación por etapas → Ruta del tutor: solicita explicación
README.md - Ruta del tutor → Autenticación y roles: exige usuario
backend/app/modules/tutor/router.py - Ruta del tutor → Servicio tutor IA: invoca
backend/app/modules/tutor/router.py - Ruta del tutor → Prompt educativo: incluye versión
backend/app/modules/tutor/router.py - Servicio tutor IA → Prompt educativo: compone indicaciones
backend/app/modules/tutor/servicio.py - Servicio tutor IA → Proveedores IA: consulta proveedores
backend/app/modules/tutor/servicio.py - Proveedores IA → Servicio IA externo: solicita respuesta
README.md - Simulación por etapas → Progreso y niveles: registra avance
README.md - Progreso y niveles → Avance compartido: comparte con autorización
README.md - Avance compartido → Profesional de salud: permite consultar
README.md - Base PostgreSQL → Exportación seudonimizada: ofrece datos seudonimizados
README.md