Hanabi

invite-only Hanabi for iPhone
Side project · 2026 · Password-protected, invite only

The cooperative fireworks card game, built for a phone screen and a private table of friends. You can only get in with an emailed invite, so the link below will show you a sign-in page and nothing else.

Hanabi screenshot: the table mid-game, with fireworks piles, discards, two Claude bots' hands and your own face-down cards
The table at turn 16 · you see everyone's cards except your own

Hanabi is a card game played backwards: you hold your hand facing away from you, everybody else can see it, and the whole game is the table telling you just enough, one colour or one number at a time, to play the right card at the right moment. It is a lovely game to play with people you trust and a terrible one to play with strangers, which is why this version is not open to the public.

It is built for an iPhone held in one hand: your cards along the bottom thumb, the fireworks and the discard piles at the top, your friends' hands in between. Tap a teammate's card to give a clue, tap your own to play or discard. Everyone's screen updates the moment a move is made.

Who gets in

At the table

After the game

Every move is written down as it happens: whose turn it was, what they did, what they knew at the time, and for a bot, why. When the game ends the log becomes a review: each player's clue efficiency, risky plays and critical discards, the turning points, and a short coaching note from Claude on what the table could do differently next time. An admin page cleans up abandoned tables and old games.

Built with

React 19 · TypeScript · Vite · Tailwind v4 on the phone; Express 5, SQLite and WebSockets on the server; Claude Code for the bots and the coaching. Self-hosted on a small VPS behind Caddy, deployed from a develop branch with a systemd unit. The game engine is a pure module with its own test suite, so the rules can be checked without a browser.

Not open to the public This is a private table for friends. If you know me and want a seat, ask and I will add your email to the list.

← all projects