This is an index of team-facing documentation for the [flutter/packages repository](https://github.com/flutter/packages/).

- [Contributing to Plugins and Packages](contributing/README.md)
- [Flutter migrate](../wiki_archive/Flutter-migrate.md)
- [Material 3 Expressive component migration checklist](material_ui/Material-3-Expressive-component-migration-checklist.md)
- [Package migration to 1.0.0](Package-migration-to-1.0.0.md)
- [Plugin Tests](testing/Plugin-Tests.md)
- [Plugins and Packages repository structure](Plugins-and-Packages-repository-structure.md)
- [Setting up the Packages development environment](contributing/Setting-up-the-Packages-development-environment.md)
- [Setting up the Plugins development environment](contributing/Setting-up-the-Plugins-development-environment.md)
- [Understanding Packages tests](testing/Understanding-Packages-tests.md)
- [Releasing a Plugin or Package](release/README.md)
- [Updating Packages repo for a stable release](release/Updating-Packages-repo-for-a-stable-release.md)
