Skip to content

Repository files navigation

Chess API written in scala for lichess.org

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

INSTALL

Clone scalachess

git clone https://github.com/lichess-org/scalachess

Start sbt in scalachess directory

sbt

In the sbt shell, to compile scalachess, run

compile

To run the tests

testKit / test

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

bench / Jmh / run

Or to output a json file

bench / Jmh / run -rf json

To run quick benchmarks (results may be inaccurate):

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

To run longer benchmarks:

bench / Jmh / run -i 3 -wi 2 -f2

To run benchmarks for a specific class:

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

To run scalafmt and scalafix:

sbt prepare

Install (python)

For python code, install pipenv, and run $ pipenv install from project root.

Release

  1. Bump version in build.sbt.
  2. Commit the version bump and push to master.
  3. gh release create X.Y.Z

Releases

Sponsor this project

Packages

Used by

Contributors

Languages