3 releases

0.1.3 Jan 29, 2024
0.1.2 Jan 22, 2024
0.1.1 Jan 21, 2024

#206 in Games

MIT license

150KB
3.5K SLoC

Chessly

Chessly is a chess engine written in Rust. It is designed to be efficient and robust, providing a solid foundation for building chess applications.

Features

  • Move generation
  • FEN (Forsyth-Edwards Notation) parsing
  • Position evaluation
  • Best move search
  • Perft testing

Getting Started

To get started with Chessly, you need to have Rust installed on your machine. If you don't have Rust installed, you can download it from the official website.

Once you have Rust installed, you can clone this repository:

git clone https://github.com/vitali-semenyuk/chessly.git
cd chessly

Then, you can build the project:

cargo build

And run the tests:

cargo test

Usage

You can use Chessly as a library in your own Rust projects. Add it as a dependency in your Cargo.toml:

[dependencies]
chessly = { path = "path/to/chessly" }

Then, you can use the features provided by Chessly in your code. For example, you can generate moves for a given position:

use chessly::board::Board;
use chessly::fen::INITIAL_FEN;

let board = Board::from_fen(INITIAL_FEN).expect("Parsing initial board state from FEN");
let moves = board.get_moves();

Contributing

Contributions are welcome! Please feel free to submit a pull request.

License

Chessly is licensed under the MIT license. See LICENSE for more information.

Dependencies

~1.3–2MB
~38K SLoC