Lila (li[chess in sca]la) is a free online chess game server focused on realtime gameplay and ease of use.
It features a search engine, computer analysis distributed with fishnet, tournaments, simuls, forums, teams, tactic trainer, a mobile app, and a shared analysis board. The UI is available in more than 80 languages thanks to the community.
Lichess is written in Scala 2.11, and relies on Play 2.4 for the routing, templating, and JSON. Pure chess logic is contained in scalachess submodule. The server is fully asynchronous, making heavy use of Scala Futures and Akka 2 actors. Lichess talks to Stockfish deployed in an AI cluster of donated servers. It uses MongoDB 3.4 to store more than 600 million games, which are indexed by elasticsearch. HTTP requests and websocket connections are proxied by nginx 1.9. The web client is written in TypeScript and snabbdom. The blog uses a free open content plan from prismic.io. All rated standard games are published in a free PGN database. Browser testing done with . Please help us translate lichess with Crowdin.
If you want to add a live chess section to your website, you are welcome to embed lichess into your website. It's very easy to do.
This project source code is open for other developers to have an example of non-trivial scala/play2/mongodb application. You're welcome to reuse as much code as you want for your projects and to get inspired by the solutions I propose to many common web development problems. But please don't just create a public lichess clone. Instead, embed lichess using an <iframe> into your website.
Also note that while I provide the source code, I do not offer support for your lichess instance. I will probably ignore any question about lichess installation and runtime issues.
Feel free to use lichess API in your applications and websites.
See the lichess Thanks page
- Chrome or Chromium, 1 year old or newer (fastest local analysis!)
- Firefox, 1 year old or newer (second fastest local analysis!)
- Opera 34 and newer (meh)
- Safari 9 and newer (boo)
- Microsoft Edge (yuck)
- Internet Explorer 11 (eew)
Older browsers will not work. For your own sake, please upgrade. Security and performance, think about it!
Lila is licensed under the GNU Affero General Public License 3 or any later version at your choice with an exception for Highcharts. See COPYING for details.