Project / Personal
A desktop chess workbench — a lighter ChessBase, with your games kept as plain PGN
A desktop chess database and analysis workbench, built as a lighter alternative to ChessBase. Games are kept as ordinary PGN files in folders you can read, copy and back up; the SQLite database is only an index over that text, so losing it costs you search rather than chess. Everything runs on your own machine — no account, no cloud library, no telemetry.
A bundled Stockfish analyses positions live, with up to five variations each drawn in its own colour on the board, and a telemetry panel reporting search depth, nodes per second, hash pressure, thread count against the machine's cores, and CPU temperature and wattage where the hardware publishes them. One click annotates an entire game, writing evaluations and blunder glyphs straight into the PGN.
The opening explorer walks a collection's tree move by move and scores every line from the named player's side rather than White's — your own games, or a database of one strong player's. It shows win/draw/loss splits, average opposition, a score-by-year trend for lines that stopped working, and a scan that ranks the openings which actually cost the most points. Aggregation happens in SQL, so a twenty-thousand-game collection answers in about forty milliseconds.
Imports handle almost anything: PGN files, ZIP/GZ/BZ2/ZST archives, folders and URLs, whole lichess accounts streamed without a size cap, chess.com, and ChessBase exports — including their Windows-1252 encoding, which most readers mangle, and their richer tag set of teams, titles, FIDE IDs and tournament dates. A linked lichess account can pull in private studies and keep importing new games as they are played.
Lichess studies become spaced-repetition repertoire drills you play blindfold, a seven-level visualisation trainer sits alongside, PDFs can be read next to the board, and positions link out to tablebase results and Wikipedia background. Written in Python and vanilla JavaScript with no build step, with two independent chess engines — one per language — both verified against the standard perft positions.