Ligeon is a simple chess game browser / study tool built with Electron, React, and SQLite. Import, browse and replay chess games from plaintext PGN game files.
My chess coach recommended reviewing master game collections to learn patterns and opening themes. However, existing free browsers are limited: ChessBase costs money, SCID vs. PC had a dated interface and was hard to use, and Lichess studies are limited to 64 chapters.
So, rather than use any of these, I did what any reasonable person would do: build my own application.
Mostly this is an experiment in using Claude Code to create a real Electron/React application. Lichess studies are still my tool of choice.
This app imports "plain" PGN data only. It does not pull in comments, variations or annotations. This is becaus such additions to chess game moves are generally considered creative work and thus copyright protected (mere game moves and headers are "facts" and thus not copyright-protected).
Additional design choices:
- No nested variations (single-level branches only)
- Simple comments and basic annotations.
- No Stockfish engine integration (you should really analyze positions without an engine!)
If you need the full feature set of Lichess studies, this is not it. However, if you need that, you can easily push positions and full games up to Lichess for further analysis.
Its a Lichess-based PGN browser.
- Node.js 24+
- npm
npm installRun just the tests:
npm testTo run all TypeScript checks, ES linting, dead code detection (knip) and vitest coverage checks:
npm run checkLaunch the Electron app with hot-reload:
npm run appnpm run packageCreates distributable app bundles in release/.
Convert PGN files to SQLite databases for exploration and testing.
Usage:
npm run pgn-to-sqlite -- <pgn-file> [output-dir]Example:
npm run pgn-to-sqlite -- resources/sample-games/tal-life-and-games.pgn ./releaseSample games sourced from brianerdelyi/ChessPGN
Sound files in public/sounds/ copied from Lichess, licenced under CC BY-NC-SA 4.0 by EdinburghCollective.
See: lichess-org/lila/COPYING.md
Chess piece SVGs in public/pieces/ sourced from lichess-org/lila.
See: lichess-org/lila/COPYING.md
| Set | Author | License |
|---|---|---|
| cburnett | Colin M.L. Burnett | GPLv2+ |
| merida | Armando Hernandez Marroquin | GPLv2+ |
| alpha | Eric Bentzen | Free for personal non-commercial use |
| companion | David L. Brown | Freeware |
| fresca | sadsnake1 | CC BY-NC-SA 4.0 |
| mpchess | Maxime Chupin | GPL3v3+ |
| xkcd | Randall Munroe | CC BY-NC-SA 2.5 |
This application uses Lucide icons, including for the application logo. License
GPLv3 (because it uses Chessground)
