An open API service indexing awesome lists of open source software.

https://github.com/antonschnfeld/chesskit

ChessKit is a modular and extensible chess engine built with Java. It focuses on decent performance, flexibility in board shapes, and custom game rules.
https://github.com/antonschnfeld/chesskit

chess chess-ai chess-variants java java-21 learning-exercise

Last synced: 6 months ago
JSON representation

ChessKit is a modular and extensible chess engine built with Java. It focuses on decent performance, flexibility in board shapes, and custom game rules.

Awesome Lists containing this project

README

          

# ChessKit

## Description

ChessKit is a modular and extensible chess engine built with Java. It focuses on decent performance, flexibility in board shapes, and custom game rules. This is a learning project, and large parts of the codebase are likely to be refactored as the project evolves to achieve its goals.

## Getting Started

### Dependencies

Ensure you have the following installed:

- Java 21
- Maven
- (For testing) JUnit and Mockito

The dependencies are managed via Maven and can be found in `pom.xml`:

```xml

org.junit.jupiter
junit-jupiter-api
5.12.0-RC2
test

org.mockito
mockito-core
5.15.2
test

```

### Installing

Clone the repository and build the project using Maven:

```sh
git clone
cd ChessKit
mvn clean install
```

### Executing

You can run the program using Maven or by executing the JAR file directly:

```sh
mvn exec:java
```

or

```sh
java -jar target/ChessKit-1.0-SNAPSHOT.jar
```

## Help

If you encounter any issues, make sure:

- You are using Java 21
- Dependencies are installed properly via Maven

## Authors

- **Anton Schönfeld** - [Email](mailto\:antonschnfeld@gmail.com)

## Version History

- **0.1** - Initial development (No releases yet)

## License

This project is licensed under the MIT License - see the `LICENSE` file for details.

## Acknowledgments

- Inspired by a friend from school
- Learning project aimed at extensible chess AI

## Future Goals

- Support for modular board shapes
- Increased performance
- Continued refactoring to improve architecture and maintainability