Skip to content

Chess / Tic-Tac-Toe Engine — Simple#

Problem statement (interviewer prompt)

Design the model for a chess game engine + UI: board, pieces, legal-move generation per piece type, special moves (castling, en passant, promotion), check / checkmate / stalemate detection, move history with undo, and PGN import/export. Optional: AI player.

classDiagram
  class Game
  class Board
  class Piece
  class Move
  class Player
  class Rules
  Game *-- Board
  Game *-- "many" Player
  Board *-- "many" Piece
  Game --> Move
  Game --> Rules