A local-first chess repertoire + spaced-repetition trainer, built as a fork of Lichess Mobile (GPL-3.0).
Give the player a position from their own repertoire and ask them to play what they have learned.
- Import your PGN studies (variations, comments, NAGs, custom FENs).
- Review due positions on a Lichess-quality board.
- Spaced repetition schedules what you see next — learned moves return when they're due again.
- Everything runs locally; no account, no network on the training path.
Website: https://cassandre60.github.io/chesssrs-site/ — downloads for Linux and Android, a live interactive demo, and FAQ.
The local-first review loop has shipped to the owner for beta use; work is in
Phase 6 refinement. Lichess study import, opening hubs, practice and three
selectable schedulers are implemented. IMPLEMENTATION_PLAN.md is the delivery
and evidence ledger; this summary is not a fresh runtime-verification claim.
After every git pull — not only in a fresh worktree — regenerate the
build_runner output. It is gitignored, and a stale copy fails to compile with
errors inside *.freezed.dart that point at the generated file, not at the
source that changed (flutter run does not run code generation; CI does).
fvm flutter pub get
fvm dart run build_runner build
# or both of the above, then run:
scripts/dev_run.sh -d linuxThen the usual bounded loop:
fvm flutter analyze <touched paths>
fvm flutter test <affected test file> --concurrency=1
fvm flutter run -d linuxFull suites and release builds run in CI, not locally. See TEST_STRATEGY.md
for the bounded local loop and AGENTS.md for worktree isolation.
Building small, useful software — if this project saves you time, consider buying me a coffee to help keep it maintained.
ChessSRS is a fork of Lichess Mobile and is licensed under the GNU GPL
v3 — see LICENSE and COPYING.md. Lichess Mobile copyright and license
notices are preserved.
Domain behavior is informed by studying (not copying)
listudy (AGPL-3.0, behavioral
reference only) and chessrs
(GPL-3.0). See docs/INTEGRATION_MAP.md.
Start with the authority map: one home per rule, with links to product scope, architecture, SPEC invariants, verification, delivery status and agent instructions.
