Tom Praschan b3dd310759 Backport fixes/features to 0.18.x (#2482)
* feat: update chessground to 7.3.0 (add a board (purple), pieces (xkcd, firi) and fixing staunty knight to be aligned center) (#2380)

* Add purple board theme in list (chessground dependency)

* Change chessground version to 7.3.0

* feat(otb): add takeback button (#1642) (#2334)

* potential fix for notification issues on iOS (#2451)

getAPNSToken() is the only iOS specific thing that happens in this file,
so I think there's a high probabillity that the issues are related to
that.

According to
https://firebase.google.com/docs/cloud-messaging/flutter/get-started we
need to get permission *before* calling getAPNSToken(). Currently it
looks like there could be a race condition where the connectivity change
listener fires before we call requestPermission(). Fix this by moving
the ref.listen() below the requestPermission() call.

* Fix register firebase after sign in

And make sure _registeredDevice flag is only set when device is actually
registered.

* fix: remove delay when entering analysis board (#2471)

This is an alternate fix for #1232 which does not need the 500ms delay.

When entering the analysis board, the delay of 500ms before scrolling to
the current move is unexpected for users. With this solution, we can
jump to the current move immedialtely.

* feat: add log screen (#2463)

---------

Co-authored-by: lumiknit <aasr4r4@gmail.com>
Co-authored-by: overcharged <199525476+overcharged-coder@users.noreply.github.com>
Co-authored-by: Vincent Velociter <vincent.velociter@gmail.com>
2026-01-06 09:47:23 +01:00
2025-11-20 15:51:34 +01:00
2025-06-05 09:38:12 +02:00
2025-09-10 11:08:18 -08:00
2025-11-19 16:21:03 +01:00
2024-05-13 14:06:57 +02:00
2024-09-14 14:56:49 -07:00
2025-09-10 11:08:18 -08:00
2025-06-16 08:32:12 +02:00
2025-08-15 18:25:42 -04:00
2022-05-01 12:26:51 +02:00
2022-11-03 15:38:36 +01:00

Lichess Mobile

Second iteration of the Lichess mobile app.

How to contribute

Contributions to this project are welcome!

If you want to contribute, please read the contributing guide.

Setup

tl;dr: Install Flutter, clone the repo, run in order:

  • flutter pub get
  • dart run build_runner watch
  • flutter analyze --watch,

and you're ready to code!

See the dev environment docs for detailed instructions.

Running the app

To run the app, you can use the following command:

# if not already done, run the code generation
dart run build_runner build

# run the app on all available devices
flutter run -d all

Running tests

To run the tests, you can use the following command:

# if not already done, run the code generation
dart run build_runner build

flutter test

Internationalisation

Do not edit the app_en.arb file by hand, this file is generated. For more information, see Internationalisation.

Releasing

Only for members of lichess team.

  1. Bump the pubspec.yaml version number. This can be in a PR making a change or a separate PR. Use semantic versioning to determine which part to increment. The version number after the + should also be incremented. For example 0.3.3+000303 with a patch should become 0.3.4+000304.
  2. Run workflow Deploy to Play Store
S
Description
New lichess mobile app in flutter
Readme GPL-3.0 260 MiB
Languages
Dart 99.2%
Swift 0.5%