/scalachess

Chess API written in scala. Immutable and free of side effects.

Primary LanguageScalaMIT LicenseMIT

Continuous Integration

Chess API written in scala for lichess.org

It is entirely functional, immutable, and free of side effects.

INSTALL

Clone scalachess

git clone git://github.com/ornicar/scalachess

Start sbt in scalachess directory

sbt

In the sbt shell, to compile scalachess, run

compile

To run the tests

test

To run benchmarks (takes more than 1 hour to finish):

bench / Jmh / run

Or to ouput a json file

bench / Jmh / run -rf json

To run quick benchmarks (results may be inaccurate):

bench / Jmh / run -i 1 -wi 1 -f1 -t1

To run benchmarks for a specific class:

bench / Jmh / run -rf json .*PlayBench.*

Code formatting

This repository uses scalafmt.

Please install it for your code editor if you're going to contribute to this project.

If you don't install it, please run scalafmtAll in the sbt console before committing.