Skip to content

Main repo for Y STEM and Chess cloned from Lichess.org

License

AGPL-3.0, Unknown licenses found

Licenses found

AGPL-3.0
LICENSE
Unknown
COPYING.md
Notifications You must be signed in to change notification settings

YSTEMandChess/ex.ystemandchess.com

Repository files navigation

Build server Build assets Crowdin Twitter

Lichess homepage

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 130 languages thanks to the community.

Lichess is written in Scala 2.13, and relies on the Play 2.8 framework. scalatags is used for templating. Pure chess logic is contained in the scalachess submodule. The server is fully asynchronous, making heavy use of Scala Futures and Akka streams. WebSocket connections are handled by a seperate server that communicates using redis. Lichess talks to Stockfish deployed in an AI cluster of donated servers. It uses MongoDB to store more than 1.7 billion games, which are indexed by elasticsearch. HTTP requests and WebSocket connections can be proxied by nginx. The web client is written in TypeScript and snabbdom, using Sass to generate CSS. The blog uses a free open content plan from prismic.io. All rated games are published in a free PGN database. Browser testing done with Browserstack. Please help us translate lichess with Crowdin.

See lichess.org/source for a list of repositories.

Join us on discord or in the #lichess freenode IRC channel for more info. Use GitHub issues for bug reports and feature requests.

Installation

Installation instructions for Ubuntu 18.04 or greater

Dependencies

  • git
    • sudo apt update
    • sudo apt install git
    • Verify with git --version
  • sbt (>= 1.3)
    • echo "deb https://dl.bintray.com/sbt/debian /" | sudo tee -a /etc/apt/sources.list.d/sbt.list
    • curl -sL "https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x2EE0EA64E40A89B84B2DF73499E82A75642AC823" | sudo apt-key add
    • sudo apt-get update
    • sudo apt-get install sbt
  • node (10 >=, nodejs)
    • sudo apt update (make sure packages are updated)
    • sudo apt install nodejs
    • sudo apt install npm (You will want this too)
    • Verify with nodejs -v
  • yarn (1.0 >=)
    • curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -
    • echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list
    • sudo apt update
    • sudo apt install yarn
    • Verify with yarn --version
  • gulp-cli
    • sudo yarn global add gulp-cli
  • Java (JDK 13.0.2 using SDKMAN)
    • curl -s "https://get.sdkman.io" | bash
    • sdk list java (Will show available versions of java to download)
    • sdk install java 13.0.2-open (13.0.2 is newest version of JDK 13 available at time of writing)
    • sdk default java 13.0.2-open (Sets this version of java as default)
    • If you need an installation path
      • ~/.sdkman/candidates/java/
    • Verify with java -version

Infrastructure

Compiling and Running Lichess

git clone https://github.com/YSTEMandChess/app.ystemandchess.com.git

Within the "app.ystemandchess.com" directory run

  • ./lila # thin wrapper around sbt
  • Once lila prompt has loaded run compile
    • Note, you only need to compile if new code is added while the application is not running
  • Once compilation has finished run run
  • Once this command is complete go to your browser and type localhost:9663

Web Sockets

If you need websockets, which you probably do then,

git clone https://github.com/ornicar/lila-ws.git
cd lila-ws
sbt run

Additional installation instructions can be found here on the original Wiki how to setup a development environment.

HTTP API

Feel free to use the Lichess API in your applications and websites.

Credits

See the contributors on this repository and lichess.org/thanks.

Supported browsers

Name Version Notes
Chromium / Chrome last 10 Full support, fastest local analysis
Firefox 55+ Full support, second fastest local analysis
Safari 10.1+ Reasonable support
Opera 55+ Reasonable support
Edge 17+ Reasonable support

Older browsers (including any version of Internet Explorer) will not work. For your own sake, please upgrade. Security and performance, think about it!

License

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.

About

Main repo for Y STEM and Chess cloned from Lichess.org

Resources

License

AGPL-3.0, Unknown licenses found

Licenses found

AGPL-3.0
LICENSE
Unknown
COPYING.md

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published