A browser port of my Java chess project: legal move highlighting, 10-minute clocks, captured-piece tracking, and an AI opponent using minimax search with alpha-beta pruning.
You play White. When a pawn reaches the last rank, choose its promotion — queen, rook, bishop, or knight. The original project is written in Java (Swing) — this page ports its logic to JavaScript so it runs right in your browser, and adds castling, en passant, and promotion choice on top of the original rule set.