Inspiration

Karaoke is fun, but it’s usually passive. We were inspired by rhythm games like Osu! and their competitive communities, where skill, timing, and performance are tracked and ranked. Kompareoke brings that same energy to karaoke with live scoring, feedback, and head-to-head competition.

What it does

Kompareoke is a multiplayer karaoke web app where up to four players join a room using a code and compete in real time. As the song plays, lyrics progress line by line and each player receives live scoring based on their performance. Scores update instantly, allowing players to see how they stack up against others during the song and on the results screen.

How we built it

We built Kompareoke as a full-stack web app using React for the frontend and real-time communication to synchronize rooms, lyrics, and scores across players. The app is structured around a lobby system, a live battle screen, and a persistent results screen, ensuring smooth transitions and a clear game flow.

Challenges we ran into

Managing real-time state across multiple players was one of the biggest challenges. Keeping lyrics, scores, and player actions perfectly in sync required careful state coordination. Designing a UI that stayed responsive while handling frequent updates was also a major focus.

Accomplishments that we're proud of

We’re proud of delivering a complete multiplayer karaoke experience in a web app format. The room system, live scoring, and clear separation between lobby, battle, and results create a polished and intuitive user experience.

What we learned

This project taught us how to design and manage real-time multiplayer systems in a web environment. We gained hands-on experience with state synchronization, real-time updates, and building game-like flows using web technologies.

What's next for Kompareoke

Next, we plan to expand the song library, refine scoring accuracy, and improve room management features. We also want to explore leaderboards and long-term player stats to make Kompareoke even more competitive.

Built With

Share this project:

Updates