Registre
Inscrit
2026-09-29
Premier commit
2026-08-08

Taverla

App · jeux de soirée · en ligne

Des jeux de soirée sur tous les téléphones de la pièce, au même instant.

Une étagère de jeux de soirée qui partagent une salle, un QR code et des écrans. Un écran mène la partie, les autres jouent sur ce qu’ils ont sous la main, et le premier qui sait remporte la manche.

  • TypeScript
  • React
  • Hono
  • WebSocket
  • Zod
  • Playwright
Jouer en ligne (s’ouvre dans un nouvel onglet)Code source (s’ouvre dans un nouvel onglet)
Livré29 · IX · 2026
Dessin : un écran hôte affichant le QR code de la salle et les joueurs installés, et un téléphone affichant le buzzerBUZZERScannez pour rejoindreINSTALLÉSAdaPREMIERGraceLinusMargaretProchaine manche bientôtSALLE · BUZZERAdaBUZZLe plus vif gagne la manche
Dessiné pour ce registre, pas une capture
Inscrit
2026-09-29Livré
Premier commit
2026-08-08Bootstrap the blind test monorepo
Commits
347sur main, lus le 2026-10-02
Couverture
88 %lignes exécutées par les tests du serveur et des règles du jeu, lues le 2026-10-02
Paquets maison
11 sur 11installés depuis npm

Ce qui est livré

  1. Trois jeux sur la même étagère : blind test, buzzer et quiz.
  2. Une salle, un QR code : chacun rejoint depuis le téléphone qu’il a en main.
  3. Le serveur horodate chaque buzz : c’est la main la plus rapide qui gagne, pas l’horloge la plus en avance.
  4. Testé de bout en bout : de vrais sockets contre un vrai serveur, des parcours Playwright sur deux écrans.
  5. En anglais et en français, clair et sombre, sur un téléphone ou un portable.

Comment ça marche

un serveur, un socket vers chaque écran

Schéma : un serveur tient un WebSocket vers l’écran hôte et vers chaque téléphone, et horodate chaque buzz à son arrivéeUn serveurHono · date chaque buzzÉcran hôtemène la partie1er · gagne2e3e—WebSocket vers chaque téléphoneL’ordre se décide à l’arrivéesur le serveur, pas selonl’horloge des téléphones.

Historique

Tiré du git log, abrégé, et laissé dans sa langue : 13 commits sur 347, du plus récent au plus ancien.

  1. Count page views with analytics
  2. Take the router provider from @adrienlcp/react-router
  3. Serve a wall: the room's own screen, paired by the host's device
  4. Let a Result succeed with nothing, rather than succeed with undefined
  5. Turn a held floor's buzzer into its dial, and take BUZZ off a dead circle
  6. Freeze the round on the server, not only on the phone
  7. Offer the room back to the device holding its key
  8. Hide the QR code from a reader who cannot point a camera at it
  9. Let a room hold two consoles without losing its round
  10. Make the bare buzzer a game rather than a source of questions
  11. Give Taverla a front door, and the blind test its own
  12. Make the blind test playable end to end
  13. Bootstrap the blind test monorepoPremier commit

Installe

11 des 11 paquets maison, depuis npm, jusqu’aux réglages du compilateur et du linter.

Votre équipe, 2026

Je cherche mon prochain poste. Écrivez-moi, ou prenez le CV : un mis en page, et un sobre pour les logiciels de recrutement.