Skip to content

Working with Lila

What is lila?

Lichess is primarily written in the Scala programming language. The name for the main Lichess codebase is "lila", which stands for "Lichess in Scala".

The main Lichess code repositories have automatically been added to your workspace. You can find them at:

ls /workspace/lila-docker/repos

To open them in your workspace:

open -r repos/lila      # open main lila repository
open -r repos/lila-ws   # open websocket repository

Recompiling lila

When you edit a scala file, you'll have to restart lila. In a terminal, type:

./lila-docker lila restart

Recompiling frontend assets

If you're working on TypeScript or SCSS files, you can automatically detect the changes and recompile the assets. In a terminal, type:

./lila-docker ui

Updating Routes

If you edit the conf/routes file, you'll need to update the route cache.

docker compose exec lila bash -c "./lila playRoutes"