Quiz Whiz
Real-time multiplayer quiz platform with AI-powered question generation, PIN-based game joining, and live leaderboards for live event environments.
Problem
Live event organizers running quiz competitions needed a multiplayer platform that works reliably in low-connectivity environments — venues with spotty WiFi or shared internet. Existing solutions required participants to install apps, create accounts, or relied on cloud infrastructure that degraded under load with many simultaneous connections. Organizers also needed a way to generate fresh questions quickly without manually curating a database.
Solution
A real-time multiplayer quiz platform where participants join by entering a PIN — no account, no app install required. Organizers create a game session, and participants join directly from their browser. Questions are generated on-demand using Google Genkit (AI), so every round feels fresh without a pre-curated database.
Socket.io handles real-time score updates, question delivery, and round transitions. Firebase provides persistence for game history and leaderboards. The system was stress-tested during live events and maintained 90% stability.
Architecture
Next.js App (Host) → Socket.io Server → Firebase DB + Genkit AI → Client (Participant)
Technical Decisions
PIN-based game joining
A 6-digit game PIN eliminates friction for participants. No account creation, no app install — just open the URL and enter the PIN. Reduces barrier to entry to near-zero.
Genkit for AI question generation
Instead of pre-loading a question database, questions are generated on-demand using Google Genkit. This means every quiz can be unique and tailored to a theme, with no maintenance overhead for the question bank.
Socket.io for real-time sync
All game state — current question, timer, scores, round status — is broadcast via Socket.io rooms. Participants see the same question and countdown timer simultaneously, with sub-second score updates after each answer.
90% live stability
Stress tested during actual live events with real participants. The system degrades gracefully — if a Socket connection drops, the client auto-reconnects and syncs to the current round state without disrupting the overall game.