Play real-time chess games against other players online for free.
Analyze chess positions using Stockfish engine and share analysis with others.
Host or participate in tournaments and simultaneous exhibitions.
Download and study over 12 billion historical games from the public database.
Multiple services required: MongoDB, Elasticsearch, Redis, plus Scala/Play build and Stockfish engine integration.
Lila (short for "lichess in scala") is the open-source codebase behind lichess.org, a free online chess server. Unlike most chess platforms, lichess is entirely free to use, has no advertisements, and is run as a non-profit. The platform supports real-time chess games, tournaments, simultaneous exhibitions (where one player faces many opponents at once), forums, teams, a tactics trainer, a shared analysis board for studying positions, and a mobile app. The server is written in Scala 3, a statically-typed programming language that runs on the Java Virtual Machine, built on a modified version of the Play web framework. It handles many tasks asynchronously, meaning it can process many requests at once without waiting, using Scala's concurrency tools. WebSocket connections (which keep a live two-way channel open between browser and server for real-time moves) are handled by a separate companion server communicating over Redis, a fast in-memory data store. Game data, over 12 billion games, is stored in MongoDB and indexed with Elasticsearch for search. Computer analysis is provided by Stockfish, a strong open-source chess engine, deployed across a cluster of donated servers. The web interface is written in TypeScript. All rated games are published in a freely downloadable database. The UI is translated into over 140 languages by community volunteers.
Generated 2026-05-18 · Model: sonnet-4-6 · Verify against the repo before relying on details.