A tool to help chess players memorize opening repertoires.
The tool lets you:
-
build repertoires by playing opening moves on a board and
-
study repertoires by repeatedly recalling one side of the opening lines.
- Chessboard UI uses lichess' Chessground.
- Chess game logic uses chess.js.
- PGN parser uses PEG.js and the grammar from kevinludwig/pgn-parser.
- Authentication uses Auth0.
- Icons from the Noun Project.
- Tooltips use tippy.js.
- Toasts use toastr.
- Sounds from lichess and use howler.js.
- Feedback mechanism uses Doorbell.io.
- Database uses MongoDB and is hosted on MongoDB Atlas.
- Server written in Node.js.
- Client bundling uses Webpack.
- Unit tests use Jest and ts-jest.
- Clone the repository.
- Install MongoDB if necessary. Then start a local MongoDB database instance:
$ mongod --dbpath ~/data/db --port 27017
[...]
waiting for connections on port 27017
- Copy the
.env
file which points the application to your local database:
studyopenings/ $ cp .env.local .env
- Run the server:
studyopenings/ $ npm install
studyopenings/ $ npm run start-dev
[...]
studyopenings is running!
Listening on 5000.
Using database path: mongodb://127.0.0.1:27017
- Go to http://localhost:5000.
To run all the tests once:
studyopenings/ $ npm install
studyopenings/ $ npm run test
[...]
Ran all test suites.
To run the tests continuously as changes are made:
studyopenings/ $ npm install
studyopenings/ $ jest --watch
Justin Venezuela • jven@jvenezue.la • http://jvenezue.la