Skip to content

Latest commit

 

History

History
31 lines (22 loc) · 766 Bytes

File metadata and controls

31 lines (22 loc) · 766 Bytes

Chess Computer

A chess engine written in Rust.

Features

  • Bitboard-based board representation
  • Full legal move generation (castling, en passant, pawn promotion)
  • Check detection
  • Draw detection: stalemate, insufficient material, threefold repetition, fifty-move rule
  • FEN import
  • Zobrist hashing for position tracking

Usage

Run the game from the terminal:

cargo run

Moves are entered as two squares separated by a space (e.g. e2 e4). For pawn promotion, append the piece type as a third argument (e.g. e7 e8 q).

Project Structure

src/
├── attacks/    # Attack generation (rays, knight, pawn)
├── game/       # Board state, move gen, rules, FEN, pieces
└── utils/      # Bitboard type, Zobrist hashing