See also: Flutter's code of conduct
For an introduction to contributing to Flutter, see our contributor guide.
Additional resources specific to the plugins repository:
- Setting up the Plugins development environment, which covers the setup process for this repository.
- Plugins repository structure, to get an overview of how this repository is laid out.
- Plugin tests, which explains the different kinds of tests used for plugins, where to find them, and how to run them. As explained in the Flutter guide, PRs need tests, so this is critical to read before submitting a PR.
- Contributing to Plugins and Packages, for more information about how to make PRs for this repository, especially when changing federated plugins.
Flutter plugins follow Google style—or Flutter style for Dart—for the languages they use, and use auto-formatters:
- Dart formatted
with
dart format
- C++ formatted with
clang-format
- Note: The Linux plugins generally follow idiomatic GObject-based C style. See the engine style notes for more details, and exceptions.
- Java formatted with
google-java-format
- Objective-C formatted with
clang-format
If you are a team member landing a PR, or just want to know what the release process is for plugin changes, see the release documentation.