chess and tic-tac-toe, rebuilt from the protocol up
Zugwerk is a real-time game platform. Play chess or tic-tac-toe in your browser or from your phone. Challenge friends, face bots at three difficulty levels, or spectate games in progress.
Every game runs with enforced clocks, increment, and draw offers. The lobby shows who's online, who's in a game, and lets you send challenges with custom time controls and side preferences.
Kick back and watch — the observation panel shows every move in real time, with a clean observer list and live game chat. Block anyone whose chat you'd rather not read. Browse demonstration games from the history, replay stored matches, and pick a side to study.
Stable reconnects. Bots, including a Stockfish wrapper for chess. Free, no ads, no analytics.
Rust + Tokio hub, opaque relays, game servers as separate processes (and soon WASM modules). Real-time WebSocket protocol with explicit version negotiation. Postgres with continuous aggregates for game history. NGXS frontend, Capacitor for mobile.
The hub enforces clocks, relays moves, manages game lifecycles — and never interprets game state. Game servers receive opaque JSON and return opaque JSON. The protocol is versioned end-to-end.