QuedaFlow
Aplicación web para coordinar reuniones entre personas con horarios variables (turnos rotativos, guardias, hostelería, retail, etc.), analizando bloques de ocupación y encontrando automáticamente los mejores huecos disponibles.
Resumen
QuedaFlow es una aplicación web para coordinar reuniones entre personas con horarios variables (turnos rotativos, guardias, hostelería, retail, etc.). Permite crear grupos por código, definir una ventana de planificación y añadir bloques de tiempo WORK, UNAVAILABLE o PREFERRED, ya sea manualmente o importando capturas de pantalla de apps de horarios mediante OCR. A partir de esos bloques, el sistema convierte todo a minutos desde medianoche, respeta las reglas configuradas por el host (rango de planificación, buffers antes de turnos, umbral mínimo de coincidencia, ventanas bloqueadas y duración mínima de reunión) y calcula automáticamente los mejores huecos posibles. El objetivo es reducir la coordinación a una lista clara de slots accionables, basada en datos reales y no en interminables cadenas de mensajes.
El Problema
Coordinar reuniones cuando cada persona tiene turnos distintos es caótico: los horarios cambian cada semana, hay turnos partidos y cruces de medianoche, no todos los días son igualmente óptimos y muchas herramientas tipo Doodle no contemplan reglas reales como buffers antes del trabajo o ventanas horarias excluidas. Además, muchas personas no usan calendarios digitales estructurados, sino capturas de pantalla de apps de horarios. Esto hace que canales como WhatsApp no escalen y que encontrar un simple hueco común implique revisar y comparar manualmente fotos y mensajes.
La Solución
Diseñé QuedaFlow como una solución práctica y realista pensada para equipos con turnos cambiantes. Cada grupo define su ventana de planificación, los usuarios añaden bloques WORK, UNAVAILABLE o PREFERRED (máximo 3 por usuario) y el host configura buffers automáticos antes de cada turno, umbral mínimo de coincidencia, ventanas excluidas y duración mínima de reunión. El sistema convierte los bloques a minutos desde medianoche, gestiona cruces de medianoche con división automática, filtra lo que queda fuera de rango y analiza la disponibilidad por intervalos, clasificando los resultados por nivel de coincidencia (100%, ≥ umbral configurado, menor coincidencia). Además, implementé un módulo de OCR tolerante que normaliza el texto detectado, soporta múltiples formatos de fecha y hora, une rangos partidos en varias líneas, asocia horas a fechas por contexto y marca incidencias si algo queda fuera del rango configurado. El resultado es un planner inteligente que traduce horarios complejos en decisiones claras y accionables.
Características Principales
- Grupos por código de 6 caracteres
- Ventana de planificación configurable por grupo
- Gestión de bloques WORK, UNAVAILABLE y PREFERRED (máximo 3 por usuario)
- Buffer automático antes de cada turno (ej. 20 minutos) configurable por el host
- División automática de bloques que cruzan medianoche
- Ventanas horarias excluidas configurables (ej. 00:00–07:59)
- Umbral mínimo de coincidencia configurable y clasificación de huecos (verde / amarillo / rojo)
- Duración mínima de reunión configurable
- Cálculo automático de mejores huecos a partir de la disponibilidad real del grupo
- Importación de horarios mediante OCR tolerante a formatos y ruido
- Parser que normaliza texto, une rangos partidos y asocia horas a fechas por contexto
- Marcado de incidencias cuando bloques quedan fuera del rango configurado
- Arquitectura con separación clara entre UI, servicios y dominio testeable (Clean / DDD)