It is like chess.js, but is an ES6 module, can handle history variants (tree-structured move history), PGN header values, Nags and Comments.
npm install cm-chess
- It has a similar API to chess.js
- It can handle history variants
- It can add Nags, Comments and Annotations
- It is used by the 7,000 users from chessmail (it works)
For documentation, see the jsdoc annotations in Chess.js.
cm-chess uses cm-pgn for the header and history, therefore you have also the full API of cm-pgn.
If I have some time, I will write a better documentation here in this README. :)
See the unit tests for usage examples https://github.com/shaack/cm-chess/blob/master/test/TestChess.js
And also the unit tests of cm-pgn https://github.com/shaack/cm-pgn/tree/master/test