Chessmorize is a web application to memorize and train on chess studies imported from Lichess. It allows you to manage "books" (repertoires), organize them into chapters and lines, and train according to a smart calendar.
- Import books from Lichess (using a study ID).
- Parse and store PGN files retrieved from Lichess.
- Flatten the study into trainable lines.
- Planned: handle transpositions in the lines to avoid repetition in the upstream study.
- Manage training lines.
- Enable/disable chapters (useful to ignore introduction chapters for example).
- Daily training based on a configurable calendar, with spaced repetition algorithm.
- RESTful API.
- Planned: web interface (Thymeleaf).
- Java 21
- Maven 3.9+
- Docker
- H2 database (file mode, R2DBC)
-
Build and run the Docker image
docker compose up --build
See the docker-compose.yml file for details on the Docker setup.
- Access the Chessmorize interface.
TODO: Describe where the database is stored, and how to persist it across the Docker container lifecycle.
Personal project, open-source.