Contactar
Volver
Full StackCompletado

Sistema de Gestión de Turnos

Sistema integral para que organizaciones (gimnasios, consultorios, centros deportivos) gestionen turnos, recursos y servicios. Construido con Arquitectura Hexagonal (Puertos y Adaptadores) para desacoplar completamente la lógica de negocio de la infraestructura. Incluye control de disponibilidad en tiempo real, bloqueos y excepciones, gestión de proveedores y procesamiento de tareas en background con Celery y Redis.

Ver DemoVer Código

Stack Tecnológico

FastAPIReactTypeScriptPostgreSQLRedisCeleryDockerNginx

¿Qué resuelve?

Centraliza la gestión de turnos para organizaciones con múltiples recursos y proveedores. Controla disponibilidad en tiempo real, previene conflictos de reserva, gestiona bloqueos por mantenimiento o feriados, y procesa tareas pesadas (notificaciones, liberación de turnos caducados) en background sin bloquear la experiencia del usuario.

Decisiones Técnicas

  • 1

    Arquitectura Hexagonal (Puertos y Adaptadores): el Dominio no conoce la base de datos ni FastAPI — la lógica de negocio es testeable de forma aislada sin levantar infraestructura

  • 2

    Cuatro capas explícitas: api (presentación) → application (casos de uso) → domain (entidades y puertos) → infrastructure (adaptadores SQL, Redis, repositorios)

  • 3

    Celery + Redis para tareas asíncronas en background: liberación de turnos caducados y notificaciones sin bloquear las respuestas HTTP

  • 4

    Frontend en React 18 + TypeScript + Vite con arquitectura modular: contexts para estado global, hooks para lógica reutilizable, services para comunicación con la API

  • 5

    Nginx como proxy inverso para el frontend compilado, separando el servidor de estáticos del servidor de la API

  • 6

    Evolución de una versión anterior en Django MVC — rediseñado desde cero para aplicar arquitectura hexagonal y soporte asíncrono real

Capturas