Chess

Play chess against Stockfish in your browser

GoWASMStockfishREST API

About

REST API chess server with Stockfish integration. Human vs computer, configurable difficulty (0-20), custom FEN positions, move validation, PGN export.

Two client implementations below connect to the same backend, demonstrating API flexibility.

Web Client

Drag-and-drop interface with move highlighting, undo support, and real-time status indicators.

Terminal Client

Go CLI compiled to WebAssembly, running in xterm.js. Type help for commands, new white 10 1000 to start a game.

Technical Details

  • Server: Go, SQLite, Stockfish UCI
  • Web Client: Vanilla JS, CSS3
  • Terminal Client: Go → WASM, xterm.js
  • Auth: JWT, Argon2 passwords