IT
Back to projects
2024-2025
In production
Open Source

Karaoke System

Realtime ecosystem for karaoke queue management

> The problem

In a karaoke venue with dozens of participants, managing the singer queue with pen and paper or shared lists leads to chaos: lost order, duplicates, no visibility for those waiting. When multiple devices are connected (host tablet, participants' phones), keeping state in sync becomes the real technical challenge.

  • Inconsistent queue order across devices
  • No realtime visibility for participants
  • Frequent conflicts with manual management

> The solution

I designed a server-authoritative architecture where the NestJS backend is the single source of truth. The server handles all queue, room, and turn logic, while clients only send actions and receive updates. Communication happens via Socket.IO with Redis as the shared state layer and MongoDB for persistence.

  • NestJS backend as single source of truth
  • Socket.IO for bidirectional realtime updates
  • Redis for shared state and session recovery
  • React Native (Expo) app as user and host interface

> The result

The system is stable in production, handling karaoke sessions with dozens of simultaneously connected participants. Multi-device sync is instant, state conflicts are eliminated by the server-authoritative architecture, and sessions survive disconnections thanks to automatic recovery.

  • Zero state conflicts across devices
  • Automatic session recovery
  • Sync latency under 100ms