git clone git@github.com:Vjonquiere/chess.git
cd chess/- Contributors should set up the pre-commit hook by running
chmod +x setup-hooks.sh
./setup-hooks.sh- Setup development environment
It is possible that your IDE don't find the BoardLoaderBaseListener class. It's because
some of them don't use the target/ folder for sources.
Here is how to fix:
- IntelliJ:
- Build the project
- Go to file -> project structure -> modules
- Change
target/generated-sources/antlr4from Excluded to Sources
The following are required to run the project using Docker:
- Docker
cd chess/to enter the project foldersudo docker build -t chess .to package the project inside a container named "chess"
From the chess folder :
sudo docker run --rm -it chess bashto enter the project container
You can now use the commands as specified in Usage.
The following are required to run the project:
- Java 17
- Maven
- Run
update-java-alternatives --listto see all available Java versions:- Java 17 is available: Run
sudo update-java-alternatives --set /path/to/java/versionto set your current Java version. - Java 17 is not available: Run
sudo apt install openjdk-17-jdkand re-run previous commands to set the correct Java version.
- Java 17 is available: Run
cd chess/to enter the project foldermvn clean installto install dependencies and run tests
- Java 17
- Download the latest release on the Github page (here)
- Run the jar with
java -jar chess-x.x.x.jar(x.x.x = version number)
From the local chess or Docker app folder :
mvn clean testto install dependencies and run tests
The tests are by default ran in headless mode.
You can skip the GUI tests by running :
mvn clean test -DexcludedGroups=gui
From the local chess or Docker app folder :
./chessfollowed by the arguments you want to run with. If the project has not been built yet, it will be done without running the tests before execution.
From the local chess or Docker app folder :
mvn javafx:run -Djavafx.args="args"to run the app with given args- To print all available arguments, you can run
mvn javafx:run -Djavafx.args="-h"
From the local chess or Docker app folder :
mvn clean testto install dependencies and run testsmvn jacoco:reportto generate the report
The reports will be available under target/site/jacoco
You can have a small brief by running the program with -h, but a complete guide is available in the chess/README file. For example, it contains more details on how to play on the different interfaces and explanation on special features (UCI, monitoring, ...).
A --clean option is available with the chess binary. From the local folder, run the ./chess --clean command to remove all chess sources and resources folder used for themes and settings.
- Mathilde Chollon
- Iwen Jomaa
- Denis Demirci
- Valentin Jonquière
- Jonathan Landry
Currently available in:
- English
- French
The project has been tested successfully under:
- Ubuntu 24.04 (Noble Numbat)
- Debian 10 (Buster)
- Alpine 3.21.2