Project
♟ Satranc Online
AI-powered chess in the browser — analyze with engines, understand with AI.
The problem
Most chess platforms are built around matchmaking and rating ladders. But real improvement comes from understanding why a move was good or bad — not just that it was. Analysis tools exist, but they are often buried, technical, and intimidating.
Satranc Online puts deep engine analysis and plain-language AI commentary side by side, right in the browser, with no install and no account gate.
Built for
- Players who want to improve, not just play
- Post-game review without leaving the browser
- Exploring Chess960 and freestyle variants
- Anyone curious what the engines actually think
Core principles
Three ideas that shape every product decision.
-
Engines plus language. Raw centipawn numbers alone don't teach. Pairing Stockfish and LCZero evaluations with OpenAI commentary turns data into understanding.
-
Zero friction entry. No download, no registration. Open a browser and play — or paste a PGN and analyze immediately.
-
Variant support without compromise. Chess960 and Total Random modes are first-class citizens, not afterthoughts.
Features & capabilities
🤖 Multi-engine analysis
Stockfish and LCZero run in tandem, giving both classical and neural-network evaluations for every position.
💬 OpenAI commentary
Request plain-language explanations of key moments. The AI narrates what the engines found, in terms a human can act on.
📊 Real-time evaluation bar
A live score in pawn units shows who is winning at every move. 0.0 is equal; +1.0 means roughly one pawn advantage for White.
♟ Chess960 & variants
Freestyle Chess (Chess960) with a Total Random mode — every starting position is valid, forcing creative thinking from move one.
📋 Full game reports
After a game completes, generate a full report: blunders, missed opportunities, and the critical turning points.
🌐 Browser-native
Everything runs in the browser. No app to install, no native dependencies, no account wall between you and the board.
Technical stack
- Engines: Stockfish (WASM) and LCZero for multi-engine position evaluation
- AI: OpenAI API for natural-language move commentary and game reports
- Frontend: Browser-native, no install required
- Variants: Chess960 with randomised starting positions including Total Random mode
- Delivery: Fully client-side evaluation; commentary calls OpenAI API
Design tradeoffs
Running two engines in the browser is computationally heavy. Satranc Online balances analysis depth with performance through careful threading and time controls.
- Analysis depth is throttled to keep the UI responsive
- OpenAI commentary is on-demand, not automatic, to control cost
- No server-side game storage — sessions are ephemeral by default
What I learned
- WASM chess engines in the browser are viable — but threading discipline matters
- AI commentary is most useful when scoped to specific positions, not whole games
- Chess960 requires rethinking castling logic from scratch
- Evaluation bar UX dramatically changes how players read a position
Future directions
- Persistent game history with local storage
- Opening explorer with engine evaluation
- Puzzle mode generated from real game positions
- Multiplayer with voice chat support
Play Satranc Online
Open the board, make your moves, and let the engines show you what you missed — no account needed.
Satranc Online is independently built and maintained. If it helps your game, consider supporting its development.