# 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/](https://www.chessprogramming.org/) - **PERFT (definition & methodology):** [https://www.chessprogramming.org/Perft](https://www.chessprogramming.org/Perft) - **PERFT results & test positions:** [https://www.chessprogramming.org/Perft_Results](https://www.chessprogramming.org/Perft_Results) - **FEN reference:** [https://www.chessprogramming.org/Forsyth-Edwards_Notation](https://www.chessprogramming.org/Forsyth-Edwards_Notation) - **Bitboards:** [https://www.chessprogramming.org/Bitboards](https://www.chessprogramming.org/Bitboards)