Skip to content
This repository

Chess server written in scala/play2/clojurescript for mongodb and elasticsearch

This branch is 1 commit ahead and 5088 commits behind master

Fetching latest commit…


Cannot retrieve the latest commit at this time

Octocat-spinner-32 app
Octocat-spinner-32 bin
Octocat-spinner-32 cli
Octocat-spinner-32 conf
Octocat-spinner-32 project
Octocat-spinner-32 public
Octocat-spinner-32 serve Use the /serve directory to expose large files with the webserver May 29, 2012
Octocat-spinner-32 test
Octocat-spinner-32 uci
Octocat-spinner-32 .gitignore
Octocat-spinner-32 .gitmodules
Octocat-spinner-32 LICENSE
Octocat-spinner-32 todo

Backend of

  • Scala 2.9 with Play2, Akka 2, Scalaz and Salat
  • Scalachess
  • MongoDB 2
  • ArchLinux


This is full-stack application, not a library, and it may not be straightforward to get it fully running. I assume you run a Unix with mongodb.

Some steps of the installation will trigger a download of the galaxy. This will take, naturally, ages.

Play 2.1

Interestingly enough, Play 2.1 lives in a repository named Play20.

git clone git:// Play21
cd Play21/framework
./build build-repository
./build publish-local


The pure chess logic, with few dependencies. Follow instructions from Scalachess repository


The database layer, website, cron tasks, websockets and whatnot.

git clone git://
cd lila
play compile

Config is in conf/application.conf.

If all the above worked, which would be quite surprising, you can now setup a webserver and run the application.


This is just my local nginx configuration, as an example.

server {
  listen 80;
  server_name ~^\w\w\.l\.org$; 

  location /assets {
    alias   /home/thib/lila/public;

  location /serve {
    alias   /home/thib/lila/serve;

  location / {
    proxy_set_header Host $http_host;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

  error_page 500 501 502 503 504  /error.html;
  location = /error.html {
    root  /home/thib/lila/public/;

Run it

Open lila play console and give it a ride.

To open a play console using development configuration, use:


This will use the conf/application_dev.conf configuration file.

[lila] $ run
Something went wrong with that request. Please try again.