A live trivia game with phone play, built by Claude Code on Elements
Hosts build quizzes and run them on a big screen. Players join from their phones with a code, race the countdown, and see their points and rank after every question.
How it's built
Quizlight needed a big screen and a room full of phones that move through each question together, a fair countdown, scoring and accounts for hosts. Each of those is a part of Elements, so the agent spent its 21 minutes on the game itself.
- One game state for every screen. A channel carries a snapshot of the game, and every join, answer and host action sends a fresh one, so the big screen and each phone redraw together. The answer and new scores join it when the question closes.
- Players join from their phones. A player types the six-digit code from the big screen and a nickname and gets their own game page. Nicknames are unique and a game holds up to 50 players.
- Scoring timed on the server. Each answer is timed in SQL from when the question opened, so points fall from 1,000 for an instant answer to 500 at the buzzer, with a short grace for the network. The question closes the moment the last player answers.
- A countdown in step. Each screen turns the server's remaining time into a local deadline once per question, so the phones and the big screen count down together.
- Server calls as function calls. The host's controls and the quiz editor call server functions straight from the page with
@rpc. - Data and sessions from SQL. Migrations define the game and seed a host login with three quizzes of ten questions each. Hosts sign in with a session, and each game's controls stay with the host who started it.
Why Elements
Elements is an integrated full-stack app framework and a project server. The project server checks the agent's work as it builds: it type-checks the server and browser code, analyzes the program, applies migrations and runs the tests, then reports the results to the agent. A security mistake, such as calling a server-only function from the browser, is a compile error. The agent reads the report and fixes its own mistakes before it tells you a feature is done. The same checks run on every feature you ask for next.
Run it yourself
- 1 Sign up
Already have an account? Sign in
- 2 Install and run the demo One prompt to paste into your agent.
The prompt
What Claude was given to build this app.
Build a multiplayer trivia game named quizlight, for game nights. HOST (accounts) - Build quizzes: questions with four answers, one correct, and a time limit. - Start a game, which shows a join code on the big screen. - The big screen shows each question with a countdown, then the answer and how many picked each option, then the leaderboard. PLAYER (no account, on a phone) - Join with the code and a nickname. - Tap an answer before time runs out. Faster correct answers score more. - See whether they were right and their rank after each question. Seed a host with three quizzes of ten questions each (geography, movies, science). Show the host login on the sign-in page. The whole game runs in real time across the big screen and every phone.