Lesser fork of lichess. https://spacecruft.org/deepcrayon/lila
Go to file
2012-06-19 00:32:16 +02:00
app sk "slovenĨina" translation #112. Author: Kurt Keller, Ulm/Germany. ''Kurt Keller (DE)'' as contributor 2012-06-18 00:46:05 +02:00
bin generalize and improve top dropdowns 2012-06-17 23:08:19 +02:00
cli/src/main/scala improve translation web UI and CLI 2012-06-16 18:12:24 +02:00
conf increase firewall cache ttl 2012-06-19 00:32:16 +02:00
project upgrade scalachess to 1.13 to get builtin clock lag compensation 2012-06-18 00:36:16 +02:00
public fix top menu auth box 2012-06-18 10:50:19 +02:00
serve Use the /serve directory to expose large files with the webserver 2012-05-29 00:33:28 +02:00
.gitignore prepare translation fetch mechanism for production 2012-06-16 17:37:42 +02:00
.gitmodules remove pgn4web submodule 2012-06-10 20:17:38 +02:00
LICENSE Add MIT license 2012-06-17 23:53:38 +02:00
README.md add install instructions in readme 2012-06-18 14:36:49 +02:00
todo fix top menu auth box 2012-06-18 10:50:19 +02:00

lichess.org

Backend of http://lichess.org

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

Installation

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://github.com/playframework/Play20.git Play21
cd Play21/framework
./build build-repository
./build publish-local

Scalachess

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

Lila

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

git clone git://github.com/ornicar/lila
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.

Nginx

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

server {
  listen 80;
  server_name l.org ~^\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;
    proxy_pass http://127.0.0.1:9000/;
  }

  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

play
[lila] $ run