Chifoumi
Rock, paper, scissors, for when you're not in the same room
Overview
Chifoumi is remote rock-paper-scissors for the small decisions of everyday life, like who does the dishes or who books the restaurant. You create a duel with a stake and a best-of-1, 3 or 5 format, then send the link. Each player picks on their own phone. There's a countdown, both choices appear at once, ties are replayed, and a rematch is one tap away. There are no accounts and no database. Each duel lives in memory and expires after an hour of inactivity.
Why I built this
My friends and I settle every decision, big or small, with a chifoumi. We just had no way to do it when we weren't in the same room. Playing over text doesn't work, because whoever answers second always wins.
Features
- Duel by link. Create a duel with a written stake, like "loser does the dishes", and a best-of-1, 3 or 5 format, then share the URL. Your opponent joins from their phone with just a name. No account, no app to install, no email.
- The server holds the choices. A choice never leaves the server until both players have locked theirs in. Until then, the opponent only sees a "has chosen" flag, so there's nothing to peek at. Then both screens reveal at once, and ties replay the round.
- Survives a refresh. A stable browser token puts you back in your seat after a page refresh or a dropped connection, and your opponent sees over the WebSocket whether you're connected.
- Rematch in one tap. Same room, same players, same stake. Scores reset and the next duel starts right away, for when best-of-3 didn't settle it.
- Nothing stored. There's no database. Rooms live in memory and expire after an hour of inactivity. The game engine is a pure module with no I/O, fully covered by node --test.