mobile  by lichess-org

Mobile chess application development

Created 4 years ago
2,313 stars

Top 19.2% on SourcePulse

GitHubView on GitHub
Project Summary

Summary This repository houses the Lichess mobile application, representing the second iteration of their mobile client, developed entirely using the Flutter framework. It serves as a dedicated mobile interface for the popular online chess platform, targeting both end-users seeking a seamless mobile experience and developers interested in contributing to its evolution. The project aims to deliver a feature-rich and performant Lichess experience across iOS and Android devices.

How It Works The application leverages Flutter, a cross-platform UI toolkit, for its development. A key aspect of the development workflow involves code generation, facilitated by the build_runner tool. Commands such as dart run build_runner watch and dart run build_runner build are integral to the process, suggesting the use of Dart's metaprogramming capabilities. This approach likely enhances performance, manages complex data serialization, or automates repetitive coding tasks, contributing to a more robust and maintainable codebase.

Quick Start & Requirements Setting up the development environment requires the Flutter SDK. The initial steps involve cloning the repository, executing flutter pub get to install project dependencies, and then launching the development server with dart run build_runner watch and flutter analyze --watch. To run the application on target devices, developers should first execute dart run build_runner build followed by flutter run -d all. Detailed setup instructions are available in the dedicated dev environment docs. Further information regarding internationalization practices can be found in the Internationalisation section.

Highlighted Details

  • Internationalization is managed via .arb files. A critical note specifies that the app_en.arb file should not be edited manually, as it is automatically generated.
  • The release process is clearly defined, requiring Lichess team members to bump the pubspec.yaml version number using semantic versioning. This is followed by running deployment workflows for platforms such as the Google Play Store and F-Droid.

Maintenance & Community Contributions are actively encouraged, with a dedicated contributing guide available for prospective developers. However, the README indicates that the release process is exclusively managed by members of the Lichess team. No specific community channels like Discord or Slack, nor a public roadmap, are mentioned in this document.

Licensing & Compatibility Crucially, the provided README does not specify any software license. This omission prevents an assessment of the project's compatibility for commercial use, integration into closed-source projects, or other licensing-related considerations. Clarification on licensing is essential for adoption decisions.

Limitations & Caveats The ability to release new versions of the application is restricted solely to members of the Lichess team. Developers are explicitly warned against manually editing the auto-generated app_en.arb internationalization file. The README does not provide information regarding the project's current stability status (e.g., alpha, beta, stable).

Health Check
Last Commit

1 day ago

Responsiveness

Inactive

Pull Requests (30d)
109
Issues (30d)
88
Star History
89 stars in the last 30 days

Explore Similar Projects

Feedback? Help us improve.