Explanation (tl;dr)
For some context, this is a hackathon project built in less than 24 hours. Me and my teammates had a lot of fun building this. We ultimately won the advanced software track. :D
Definition (tl;dr)
That is why for this project, we decided to build a web app, where you would need no sign-ups for players (well except for the host). You as a player, scan a QR code, play a mini-game, winner decides where the group goes next. It’s how Vegas would solve indecision. The idea can be expanded upon to include more games and more features.
The Idea
Now that you know the context, let’s dive into the project. Every friend group in Vegas asks the same questions: Where should we eat? What should we do next? Nobody wants to decide, everyone, i mean everyone, has an opinion, and you burn half the night arguing. Vegas is a city built on settling things with a gamble — so we thought, why not settle group decisions the same way?
Instead of doom-scrolling Yelp or doing the painful “I don’t care, you pick” dance, we built a platform where you literally wager your say on chaotic mini-games.
The winner picks the spot the loser takes the
punishment card. Just like Vegas: the house always deals, and somebody always
walks away with a story.
The Games
One person hosts a room and everyone else joins instantly by scanning a QR code. The host picks from five Vegas-themed mini-games:
- Rebel Shake — A 15-second phone-shaking frenzy. Like shaking dice at the craps table, but your arm does the work.
- Vegas Pan Flip — Flick your phone to launch and flip an egg. High-stakes flipping, zero cleanup.
- Poker Chip Tap — Spam-tap a 3D poker chip for the highest score before time runs out. Pure chaos.
- Kanpai Timing — Tap in rhythm as two beer glasses clink to a beat. Precision under pressure.
- Chopstick Catch — Catch falling sushi with chopsticks in a 3D scene. Dexterity challenge meets dinner prep.
Every round has a synced countdown, live race-track leaderboard, and real-time scoring.
How It Works
It’s simple:
- The host creates a room,
- Players scan the QR, everyone joins the same game session.
- Each round runs for a fixed time — when the countdown hits zero,
- No accounts. Each round runs for a fixed time — when the countdown hits zero, scores lock and the leaderboard updates.
- The winner earns the right to call the next move for the group. Dinner? Drinks? Another round? Their call.
End.
The platform is live and playable. We ran it (of course) for the rebel hacks at unlv — indecision, decision, mini-games. The core works: There are a lot more you could easility expand on, iterating on how the game feels, adding more punishment card variety, and polishing the mobile experience. If I ever revisit this project, I would focus on: persistence for rematches and a few more games in the rotation.
Lessons Learned
Built with the comfort technology that I’m familiar with, plus Convex (first time using it). It is a very nice piece of tech that I wish I had pick it up sooner, it felt like the entire js framework ecosystem has now reached a point where it’s mature and stable. Besides the majors tech stack, there isn’t really going on or is everyone just vibe code using nextjs, I mean I hope theo and fireship post more vanilla content lol? Regardless, I digress.