Estribillo — Cabinas de karaoke por franja
Características principales
Ciclo B2C: hold 15 min (expiresAt servidor) → confirm → QR; sweeper 30 s; 409 anti doble-venta y same-user
Catálogo de cabinas + selector de franjas (hora y estado en dos líneas)
Checkout con cola de canciones, bar y contador resync en visibilitychange/focus
Mis noches: lista↔detalle con totales consistentes y estados dinámicos
Puntos socio derivados: 8 pts × partySize completed (seed y reservas reales)
Staff: KPIs y serie de ingresos con gráficos SVG (ejes + tooltips)
Descripción
Estribillo es la reserva online de cabinas de karaoke privadas para el cantante final. Explora cabinas Standard, Party y VIP, elige día y franja de 60 minutos con huecos reales, arma una cola de canciones, añade bar y confirma el pago antes de que expire el hold. El ticket llega con QR SVG y un email simulado. En Mis noches consulta estados, cancela con política 24 h y acumula puntos de socio derivados (8 pts × partySize al completar). La capa de valor de verdad es el ciclo transaccional de cabina×franja: retención pending con expiresAt en servidor, sweeper ~30 s, 409 anti doble-venta y same-user, y consistencia lista ↔ detalle. El staff consulta ocupación e ingresos con gráficos SVG reales (ejes, fechas y tooltips).
Tecnologías utilizadas
Angular
TypeScript
SQLite