Lichess mobile is the lichess.org official application. It is written in TypeScript, with a bit of Kotlin and Swift. It is a web application that access native SDK thanks to Ionic capacitor. The rendering library is mithril.js. It talks to a native Stockfish engine, supporting multiple variants, through a cordova plugin. Multi-variant chess library is brought by a JavaScript version of scalachess.
- node latest LTS version
- ionic capacitor dependencies
Android:
- in addition to capacitor dependencies, android ndk for stockfish compilation (to install with Android Studio).
Make sure you installed all deps:
$ npm install
Capacitor needs the web app before update, so build it:
$ npm run build
Update capacitor:
$ npx cap update
You need to start a web server at http://localhost:8080
. For instance:
$ npm run serve
Will serve assets at http://localhost:8080
.
Once the server is running, browse to http://localhost:8080/www.
Be sure to Toggle Device Mode in your browser, or else you won't be able to click on anything.
The easiest way to do it is to open the native IDE. Capacitor has a command for that:
$ npx cap open
See the wiki.