Chess
@poe

Chess

Online chess for two players.

About this tile

Online chess for two players. The board syncs in real time, and every move lives in the synced-store as its own row so the full game history can be replayed.

What you can do

  • Play a full game of chess with legal-move validation, check, checkmate, stalemate, and pawn promotion (Q / R / B / N).
  • Take turns in real time — moves appear on the opponent's board the instant they're played.
  • Step through history with previous/next move controls to review the game at any point.
  • See captured pieces with a running material-advantage indicator for each side.
  • Choose an optional live clock from the new-game panel before play starts, with common presets like 3+2, 5+0, and 15+10.
  • Reset the game to start a fresh match when the current one ends.

Built on Synced-Store

Chess uses synced-store as its single source of truth: one game row tracks status, and each move is its own row in a moves table keyed by a zero-padded index. The board state is derived by replaying moves from the table, which keeps multi-user sync, offline-first writes, and history navigation free.

Live clock facts are also owned by synced-store mutators. The UI renders a local estimate between updates, but elapsed time, increments, rematch start times, and timeout finalization are all computed by server-side mutator execution so clients cannot author clock state directly.