project for code reengineering
- draw board
- move notation (coordinate or algebraic)
- all piece regular moves
- check
- castling
- validate illegal move: king must always in safe position
- en passant
- pawn promotion
- checkmate
- draw on stalemate position
- unit tests: test coverage min. 90%
- reduce code smells
Uppercase: Black Piece Lowercase: White Piece
R = Rook N = Knight B = Bishop Q = Queen K = King P = Pawn