A React.js implementation of chess from scratch, built after my school blocked chess.com.
- Move validation including pins and castling rules
- Move highlighting
- En passant and pawn promotion
- Clean UI with CC0 piece images from Wikipedia
- Drag-and-drop is only partially functional and introduces strange bugs.
- No real checkmate detection, though in checkmate you cannot make a move
This project was archived while attempting to implement drag-and-drop. I encountered bugs that seemed impossible; the board would randomly revert to a previous state despite no such functionality being implemented. Because the code was poorly organized, the best I could manage was to make drag-and-drop work for only one side. I figured that solving the issue would require the entire codebase to be refactored and instead opted to start another project altogether (namely battleship-solitaire).