Lesser fork of lichess. https://spacecruft.org/deepcrayon/lila
Go to file
2013-03-27 23:04:46 -03:00
api/src/main work on hubs and notifications 2013-03-26 06:05:05 +01:00
app complete bookmark module rewrite 2013-03-27 12:41:40 -03:00
bin better db testing, and other stuff 2013-03-24 12:51:28 +01:00
bookmark/src attempt of new db api, without inheritance 2013-03-27 22:45:03 -03:00
common/src/main complete bookmark module rewrite 2013-03-27 12:41:40 -03:00
conf wire hubs 2013-03-26 11:04:13 +01:00
db/src apply new db api to wiki module 2013-03-27 23:04:46 -03:00
game/src/main attempt of new db api, without inheritance 2013-03-27 22:45:03 -03:00
gameSearch/src/main complete gameSearch module 2013-03-27 21:07:08 -03:00
http/src/main move Context classes to user namespace 2013-03-19 03:22:50 +01:00
hub/src/main wire hubs 2013-03-26 11:04:13 +01:00
i18n/src/main attempt of new db api, without inheritance 2013-03-27 22:45:03 -03:00
memo/src/main complete gameSearch module 2013-03-27 21:07:08 -03:00
message/src/main attempt of new db api, without inheritance 2013-03-27 22:45:03 -03:00
notification/src/main start bookmark module 2013-03-26 11:36:31 +01:00
old attempt of new db api, without inheritance 2013-03-27 22:45:03 -03:00
play@41f873a272 upgrade to latest play and reactivemongo 2013-03-27 11:36:56 -03:00
project attempt of new db api, without inheritance 2013-03-27 22:45:03 -03:00
public better language selector 2013-02-26 16:23:26 +01:00
scalachess@e9429742c2 upgrade scalachess 2013-03-19 04:18:56 +01:00
search/src/main complete gameSearch module 2013-03-27 21:07:08 -03:00
security/src/main attempt of new db api, without inheritance 2013-03-27 22:45:03 -03:00
serve Use the /serve directory to expose large files with the webserver 2012-05-29 00:33:28 +02:00
test move pgn binary to separate branch 2012-10-12 20:47:18 +02:00
timeline/src/main attempt of new db api, without inheritance 2013-03-27 22:45:03 -03:00
uci add uci spec 2012-06-19 00:32:48 +02:00
user/src attempt of new db api, without inheritance 2013-03-27 22:45:03 -03:00
views/wiki progress with controllers and views, troubles with global view imports 2013-03-20 17:34:38 +01:00
websocket/src/main work on hubs and notifications 2013-03-26 06:05:05 +01:00
wiki/src/main apply new db api to wiki module 2013-03-27 23:04:46 -03:00
.gitignore trying hard to get distinct projects to build 2013-02-28 17:46:07 +01:00
.gitmodules ignore play untracked files 2012-11-30 15:37:49 +01:00
LICENSE update todo and license 2013-01-17 16:44:18 +01:00
mongodb.md refresh mongodb write-up 2013-01-02 11:42:41 +01:00
README.md add notes for elasticsearch mongodb river 2013-01-20 20:59:12 +01:00
todo default captcha challenge if there is no game in the DB 2013-03-12 14:59:25 +01:00

lichess.org

Backend of http://lichess.org

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

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. It will take ages.

git clone git://github.com/ornicar/lila
cd lila
git submodule update --init
bin/build-play2
bin/play compile

Configuration

cp conf/local.conf.dist conf/local.conf

conf/local.conf extends conf/base.conf and can override any value. Note that conf/local.conf is excluded from git index.

Run it

Launch the play console using your local configuration:

bin/play

From here you can now run the application (run). Open your web browser at localhost:9000.

To run the test, use test.

Production

Register as daemon on archlinux

cd /etc/rc.d
sudo ln -s /path/to/lila/bin/prod/archlinux/rc.d/lila ./
cd /etc/conf.d
sudo ln -s /path/to/lila/bin/prod/archlinux/conf.d/lila ./
  • Configure the daemon in /etc/conf.d/lila
  • Add lila to DAEMONS in /etc/rc.conf

Optional ulimit -n 99999

Restart on timeout

bin/prod/timeout-restarter

Notes to self

Elasticsearch mongodb river

cd $ES_HOME; bin/plugin -url https://github.com/downloads/richardwilly98/elasticsearch-river-mongodb/elasticsearch-river-mongodb-1.6.1.zip -install river-mongodb service elasticsearch restart

curl -XPUT 'http://localhost:9200/_river/team/_meta' -d '{ "type": "mongodb", "mongodb": { "db": "lichess", "collection": "team" }, "index": { "name": "lila", "type": "team" } }'

/etc/mongodb.conf replSet=rs0 oplogSize=100