- keep track of captured pieces
- points counter
- checkmate
- stalemate
- insuffient material
- promotion
- find_king method searches the entire board for the king, which is inefficient if called frequently.
- implement minimax
- en passant
- castling
- customizable time controls
- Undo/Redo moves
AI
- implement minimax
- alpha-beta pruning
- transposition table
- evaluation function
Specials
- save/load game
- UI