A chessboard for React inspired by chessboard.js
npm install --save chessboardjsx
The package also depends on React. Make sure you have that installed as well.
- Props: get started with Chessboard.jsx
- With move validation: how to integrate chess.js
- Integrating with chess engines: how to integrate with Stockfish, the
world's strongestworld's second strongest chess engine
- Custom: customize the board and pieces
Please take a look at CONTRIBUTING.md to find out how to contribute.
What is Chessboard.jsx?
Chessboard.jsx is a React component with a flexible "just a board" API modeled from chessboard.js. It's compatible with touch as well as standard HTML5 drag and drop.
What can Chessboard.jsx not do?
The scope of Chessboard.jsx is limited to "just a board." This is intentional and makes Chessboard.jsx flexible for handling a multitude of chess-related problems.
Specifically, Chessboard.jsx does not understand anything about how the game of chess is played: how a knight moves, who's turn is it, is White in check?, etc.
Fortunately, the powerful chess.js library deals with exactly this sort of problem domain and plays nicely with Chessboard.jsx's flexible API.
Here is a list of things that Chessboard.jsx is not:
- A chess engine
- A legal move validator
- A PGN parser
Chessboard.jsx is designed to work well with any of those software components, but the idea behind the library is that the logic that controls the board should be independent of those other domains.
Thanks goes to these wonderful people (emoji key):
This project follows the all-contributors specification. Contributions of any kind welcome!
Nils-Helge Garli Hegvik