Hires Chess Trainer – drill the mistakes from your own chess games
Spaced repetition on your chess mistakes when Chessable already does this better.

Pattern-matches your actual blunders across 300+ games, not just one-game analysis.
Chess players using Lichess or Chess.com who want to improve specific weaknesses.
Lichess · Chess.com · Chessable
Lichess and Chess.com both have great post-game analysis, but they review one game at a time. I wanted something that looks across hundreds of games at once and says: "You've played this position 14 times and lose 70% of the time — here's what to play instead."
What it does:
- Scans your Lichess or Chess.com games (up to 5,000)
- Finds repeating opening leaks — positions where you consistently pick the wrong move
- Cross-references the Lichess opening explorer to tell you how popular/sound each line is
- Detects missed tactics and endgame mistakes across all your games
- Runs Stockfish 18 (WASM) entirely in your browser — no server-side engine needed
- Includes a drill mode so you can practice the correct moves until they stick
- The free tier gives you 300 games at depth 12. Pro ($5/mo) unlocks 5,000 games, higher depth, and full tactics/endgame scanning.
Tech stack: Next.js, Stockfish 18 WASM, Lichess Explorer API, Stripe. All engine analysis runs client-side in your browser — game data is only stored server-side if you save a report.
I have a short trailer here: https://www.youtube.com/watch?v=m7oUz7t8uZA
Would love feedback on the analysis quality or anything else. Happy to answer questions about the Stockfish WASM integration or the pattern-detection approach.
Spaced repetition on your chess mistakes when Chessable already does this better.
Stockfish WASM in a Web Worker beats sending PGNs to a server.
Shadow mode plays back your own style — genuinely clever way to practice against yourself.
Catan-specific timer when generic interval timers already do this fine.
Chess moves as music is delightful, but novelty wears off after a few games.
Twelve AI agents argue over every chess move using auction or voting strategies.