lichess mobile
Official lichess.org mobile application for Android & iOS.
- Play bullet, blitz, classical, and correspondence chess
- Play in arena tournaments
- Find, follow, challenge players
- See your games stats
- Practice with chess puzzles
- Many variants, available online and offline: Crazyhouse, Chess 960, King Of The Hill, Three-check, Antichess, Atomic chess, Horde, Racing Kings!
- Game analysis with local computer evaluation
- Play against offline computer
- Over The Board mode to play offline with a friend
- Standalone chess clock with multiple time settings
- Board editor
- Available in 80 languages
- Designed for both phones and tablets, supporting landscape mode
- 100% free, without ads, and opensource!
Get it now from lichess.org/mobile
Lichess mobile is written in JavaScript (ES6), with the help of cordova and mithril.js. It uses babel, browserify, gulp and tarifa as build tools. It talks to a native Stockfish interface through a cordova plugin and uses an async chess worker which is based on lichess scalachess module compiled to JavaScript.
Requirements
Android:
- the android SDK
- SDK packages API 23
- last version of Android SDK tools and platform tools
- android ndk for stockfish compilation
- make sure the
sdk/tools/
directory is in your path, so you can useandroid
command everywhere.
iOS:
- OS X and Xcode version 7.x
Init project after checkout
$ tarifa check --force
This will recreate the cordova folder with android and iOS platforms and also install plugins.
Build the web application
Make sure you installed all deps:
$ cd project
$ npm install
Then copy project/env.json.example
to project/env.json
and modify settings
to link your app to a lichess server.
To build in dev mode:
$ gulp
To build and watch for changes:
$ gulp watch
To run in a browser it needs to have web security disabled for loading files and make requests to lichess. For mouse interaction you need to use device mode
Launch chrome with disabled security under linux
$ chromium --user-data-dir=$HOME/.chromium_dev_dir --disable-web-security
Launch chrome with disabled security under OSX
$ open -n -a Google\ Chrome --args --disable-web-security --user-data-dir=/Users/myUser/.chrome_dev_dir
Build stockfish
Android
Build the native code using:
ndk-build -C app/platforms/android
iOS
Through XCode, in the build settings menu:
- Set
C++ Language Dialect
option toC++11
value. - Set
C++ Standard Library
option tolib++
value.
Build and run on your device
Connect your device with USB debugging enabled and:
$ tarifa run [platform]
This will use the default configuration which use a development lichess server end point.
Please look at tarifa documentation for further documentation.