|author||garyqian <email@example.com>||Wed Mar 31 02:42:48 2021 -0700|
|committer||garyqian <firstname.lastname@example.org>||Wed Mar 31 02:42:48 2021 -0700|
Implement deferred components
Flutter Gallery is a resource to help developers evaluate and use Flutter. It is a collection of Material Design & Cupertino widgets, behaviors, and vignettes implemented with Flutter. We often get asked how one can see Flutter in action, and this gallery demonstrates what Flutter provides and how it behaves in the wild.
The Flutter Gallery targets Flutter‘s master channel. As such, it can take advantage of new SDK features that haven’t landed in the stable channel.
If you'd like to run the Flutter Gallery, make sure to switch to the master channel first:
flutter channel master flutter upgrade
When you're done, use this command to return to the safety of the stable channel:
flutter channel stable flutter upgrade
Flutter Gallery has been built to support multiple platforms. This includes:
You can build from source yourself for any of these platforms, though, please note desktop support must be enabled. For example, to run the app on Windows:
cd gallery/ flutter config --enable-windows-desktop flutter create . flutter run -d windows
Additionally, the UI adapts between mobile and desktop layouts regardless of the platform it runs on. This is determined based on window size as outlined in adaptive.dart.
Convert your animation to a
.gif file. Ideally, use a background color of
0xFF030303 to ensure the animation blends into the background of the app.
Add your new
.gif file to the assets directory under
assets/splash_effects. Ensure the name follows the format
splash_effect_$num.gif. The number should be the next number after the current largest number in the repository.
Update the map
_effectDurations in splash.dart to include the number of the new
.gif as well as its estimated duration. The duration is used to determine how long to display the splash animation at launch.
If this is the first time building the Flutter gallery, the localized code will not be present in the project directory. However, after running the application for the first time, a synthetic package will be generated containing the app's localizations through importing
See separate README for more details.
To generate highlighted code segments, make sure that you have grinder installed by running
flutter pub get
To generate code segments (see separate README for more details):
flutter pub run grinder update-code-segments
Create a PR to bump the version number up in
pubspec.yaml. Use semantic versioning to determine which number to increment. The version number after the
+should also be incremented. For example
1.2.3+010203 with a patch should become
Create a tag on master branch after the version bump PR is merged. This will start a Github Actions job that will draft a release with desktop applications and apk included.
git pull upstream master git tag v1.2.3 git push upstream v1.2.3
Publish the firebase hosted web release.
flutter pub run grinder build-web
firebase deploy -P prodto deploy to production (equivalent to
firebase deploy -P stagingto deploy to staging. Check with the team to see if the staging instance is currently used for a special purpose.
Write some release notes about what changes have been done since the last release.
Publish the Android release
flutter build appbundle.
Go to Releases and see the latest draft.