Projects

Mêlée

party games · live

A team evening of party games: one board on the wall, every phone in the room.

A shelf of party games turning into a team evening. One screen runs the game and everyone else plays on whatever they have to hand; the room splits into teams, a board on the wall keeps the score from one game to the next, and a world map asks where things are.

  • TypeScript
  • React
  • Hono
  • WebSocket
  • Zod
  • Playwright
14119AdaGraceLinusDrawing: a wall screen walking the teams’ pawns along a track around the evening’s standings, and a phone telling its team it is their turnTHE EVENINGRound 7 of 16 · the world map nextOwlsWolvesBearsOwlsYOUR TURNOne answer for the team
Coverage
88%
lines run by the server and game-rule tests, read 2026-10-02
House packages
11 of 11
installed from npm

At a glance

  • Ten games on one shelf, from blind test and quiz to a world map, matchsticks and a timeline.
  • Teams drawn or chosen, and a board on the wall that keeps the score across the evening.
  • One room, one QR code: everyone joins from the phone they already hold.
  • The server stamps every buzz, so the fastest hand wins, not the fastest clock.
  • Tested end to end: real sockets against a real server, Playwright journeys across two screens.
  • English and French, light and dark, on a phone or a laptop.

How it works

one server, a socket to every screen

Diagram: one server holds a WebSocket to the wall screen and to every phone, the phones grouped in teams, and a team’s first answer counts for all of itOne serverHono · keeps the eveningWall screenwalks the pawnsOwlsWolvesBearsWebSocket to each phoneA team answers as one: thefirst answer from any of itsphones counts for all of them.

House packages

11 of the 11 house packages, from npm, down to the compiler and linter settings.

Your team, perhaps?

I am looking for my next job. Write to me, or take the CV: a designed one, and a plain one for applicant tracking systems.