Estribillo — Private karaoke booths by slot
Key features
B2C cycle: 15 min hold (server expiresAt) → confirm → QR; 30s sweeper; 409 double-book and same-user
Booth catalogue + slot picker (time and status on two lines)
Checkout with song queue, bar add-ons and visibilitychange/focus resync
My nights: list↔detail consistent totals and dynamic statuses
Derived loyalty: 8 pts × partySize completed (seed and live bookings)
Staff: KPIs and 7-day revenue SVG chart (axes + tooltips)
Description
Estribillo is the digital booking flow for private karaoke booths. Browse Standard, Party and VIP rooms, pick a 60-minute slot with real availability, queue songs, add bar extras and confirm before the hold expires. The ticket includes an SVG QR plus a simulated email. My nights lists status, 24h cancellation and derived loyalty points (8 × partySize on completed). The truth layer is the exclusive booth×slot cycle: pending hold with server expiresAt, ~30s sweeper, 409 on double-book and same-user, list↔detail totals. Staff sees occupancy and revenue on real SVG charts (axes, dates, tooltips).
Technologies used
Angular
TypeScript
SQLite