Goutham Krishna Mandati 6c5b5b702c Fix zen mode toggle not persisting across games (#3233)
* Fix zen mode toggle not persisting across games
When account zen mode preference is 'In Game Only' (Zen.gameAuto),
toggling zen mode off during a game would reset on the next game
because the toggle was stored as an ephemeral field (zenModeGameSetting)
that was discarded when the GameController was recreated.
Now toggleZenMode() syncs to the server via accountPreferencesProvider.setZen(),
making the server the single source of truth. The zenModeGameSetting field
has been removed from GameState.
Closes #3226

* Address review: move tests to game_screen_test.dart, restore original zen pref on toggle
2026-05-26 11:41:59 +02:00
2026-05-21 14:26:00 +02:00
2026-05-19 13:52:40 +02:00
2026-02-03 11:05:56 +01:00
2026-05-19 10:29:02 +02:00
2025-09-10 11:08:18 -08:00
2025-11-24 10:44:29 +01:00
2026-05-25 12:26:07 +02:00
2025-06-16 08:32:12 +02:00
2025-12-21 11:29:33 +01:00
2022-05-01 12:26:51 +02:00
2022-11-03 15:38:36 +01:00
2026-04-15 12:12:53 +02: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.

If you are new to this project, you can read the documentation to get started. The CLAUDE.md is also a good resource to understand the codebase.

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
  3. Publish on F-Droid
S
Description
New lichess mobile app in flutter
Readme GPL-3.0 260 MiB
Languages
Dart 99.2%
Swift 0.5%