Update readme with proper formatting (#3)
All checks were successful
Python tests (make) / test (push) Successful in 10s

Reviewed-on: #3
Co-authored-by: Josh <josh@joshuaschuett.com>
Co-committed-by: Josh <josh@joshuaschuett.com>
This commit is contained in:
2025-08-15 16:25:09 +00:00
committed by Josh
parent b1a39507c1
commit d7c7176c34

View File

@@ -1 +1,20 @@
The goal of this project is to build a clean, fast chess engine in C that starts from a FEN string and produces fully legal moves, verified via PERFT for correctness and speed. It uses a bitboard architecture with precomputed attack caches (pawns, knights, king; sliders later) and a small, well-structured codebase thats easy to extend. The emphasis is on correctness-first approach (FEN → board → legal movegen → perft). Later, we will incorporate different algorithms and methods of evaluating chess positions to enable an AI player. # Chess Engine in C — Project Goal
Build a clean, fast chess engine in C that starts from a FEN string and produces fully legal moves, verified via **PERFT** for correctness and speed.
## Approach
- **Correctness-first engine:** `FEN → board → legal movegen → PERFT`
## Future Work
- Incorporate algorithms and evaluation methods for chess positions to enable an **AI player**.
- Build an API to facilitate chess games with the AI player over the web.
- Starting with a commandline client.
- Later building a web based client.
## Chess Engine Programming & Information
- **Chess Programming Wiki (CPW):** <https://www.chessprogramming.org/>
- **PERFT (definition & methodology):** <https://www.chessprogramming.org/Perft>
- **PERFT Results & test positions:** <https://www.chessprogramming.org/Perft_Results>
- **FEN reference:** <https://www.chessprogramming.org/Forsyth-Edwards_Notation>
- **Bitboards** <https://www.chessprogramming.org/Bitboards>