Open source Flutter
The tools we ship with are yours too.
The tools and the architecture we build on are public, so your team can check our work before anyone signs. They’re MIT-licensed, at 5.9M+ pub.dev downloads a month.
- Jump to
- Very Good CLI
- Packages
- AI
- The rulebook
- 214 lint rules, on every project we ship very_good_analysis
- Blog · AI VGV Wingspan: an agentic engineering workflow for Claude Code
- Blog · 2026 Top open source packages every Flutter developer should know
-
Handbook Very Good Engineering, written in public - 5.9M+ downloads a month, across our packages pub.dev
- Blog · Claude Code VGV AI Flutter Plugin: our best practices, for the agent
- very_good create flutter_app my_app very_good test --min-coverage 100 Very Good CLI · MIT
- GitHub Very Good Open Source
- pub.dev downloads a month
- 5.9M+
- stars on GitHub
- 4,500+
- likes on pub.dev
- 2,800+
- merged pull requests a month
- 100
- contributors from outside VGV
- 100
From GitHub and pub.dev, last updated November 2, 2026.
Every project starts at 100% test coverage.
Flutter’s own architecture recommendations name Very Good CLI as a recommended app template. Pick a command and run it.
very_good create flutter_app my_app
- Generating my_app from the flutter_app template
- lib/app/ app shell and routing
- lib/counter/ a feature with bloc, view, and tests
- lib/l10n/ internationalization
- main_development · main_staging · main_production
- analysis_options.yaml very_good_analysis
- Created a Very Good App
Eight templates
- flutter_app
- flutter_package
- flutter_plugin
- app_ui_package
- dart_package
- dart_cli
- flame_game
- docs_site
Built on our own packages
Here’s everything we publish, and what it’s for.
Create
Start a project the way we start ours.
Build
These small packages keep coming back.
- formz One way to represent a form and validate its inputs in Dart.
- very_good_infinite_list An infinite list widget for activity and news feeds, with loading and error behavior you can shape.
- cli_completion Shell completion for Dart command-line tools built on CommandRunner.
- pub_updater Checks whether a Dart package is up to date, made for CLIs that prompt their users to update.
- very_good_test_runner A test runner for Flutter and Dart, the one very_good test runs on.
Scale
These rules and pipelines hold up as the team grows.
- very_good_analysis The lint rules we use on every project, 214 of them in version 11.
- very_good_workflows Reusable GitHub workflows for Dart and Flutter packages, semantic pull requests, pub.dev scores, and spell checks.
- Very Good Engineering The handbook behind our apps: architecture, testing, and conventions, written in public.
AI
Claude Code learns our standards from these.
- vgv-ai-flutter-plugin Teaches Claude Code how we write bloc, tests, architecture, and accessibility in Flutter.
- vgv-wingspan An agentic engineering workflow for Claude Code in four phases, brainstorm, plan, build, and review, on our best practices.
- vgv-ffca-plugin A Claude Code plugin for Feature-First Clean Architecture in Flutter monorepos.
- very-good-claude-code-marketplace The registry of public Claude Code plugins we build and maintain.
We taught Claude our Flutter standards. It’s a fast learner.
The VGV AI Flutter Plugin is open source and encodes how we write bloc, tests, architecture, and accessibility. A senior engineer still reviews everything that ships.
Flutter AI engineeringThe standards are public too.
These apps shipped on our own tools.
All success stories
A Flutter photo booth with machine learning
A virtual photo booth showcasing Flutter and machine learning.
An interactive photo booth for Google I/O
An interactive photo booth for Google I/O 2021, on Flutter and Firebase.
Flutter News Toolkit: 80% less time to launch
- less time to launch
- 80%
- audience growth
- 10%
The maintainers write about them, too.
-
Flutter Expertise 5 min Feb 20, 2026 Very Good CLI 1.0.0: A Stable Foundation for Flutter and Dart Development
-
AI Product Development 4 min Mar 19, 2026 VGV AI Flutter Plugin: Battle-Tested AI Best Practices for Dart & Flutter Development
-
Flutter Expertise 3 min Nov 22, 2023 Very Good CLI License Checker
What teams ask before they build on our packages.
Short answers before you add them to your pubspec.
01 Can we use these packages in a commercial app?
Yes. Very Good CLI, very_good_analysis, formz, and the rest of our published packages are MIT-licensed, so you can use, change, and ship them in commercial apps.
02 Who maintains them?
VGV engineers, with help from the community. 100 people outside VGV have contributed, and about 100 pull requests get merged a month.
03 Does Very Good CLI run in CI?
Yes. Where a global install isn't possible, run any command with dart pub global run very_good_cli:very_good. very_good_workflows gives you ready-made GitHub workflows for the same checks.
04 Where do we report a bug or ask for a feature?
Open an issue on the package's GitHub repository. Pull requests are welcome too, from a typo fix to a new template.
05 Can VGV help our team adopt them?
Yes. Flutter Enablement is hands-on training, code review, and architecture guidance inside your repo, until your engineers ship to the VGV standard on their own. The first call is where we work out how that would look for your team.
More for Flutter teams.
- 01 Handbook Very Good Engineering The architecture, testing, and conventions behind the packages, written in public. Read
- 02 Flutter and AI Flutter AI engineering The AI Flutter Plugin and Wingspan at work, for teams putting agents in a Flutter repo. Read
- 03 Guide Migration guide From two native codebases to one Flutter app, the way we run it. Read
- 04 Service Flutter Enablement Training, code review, and architecture guidance inside your repo. Read
- 05 GitHub VeryGoodOpenSource Every repository, issue, and pull request, in one organization. Open
- 06 Flutter Expertise Flutter at VGV The clients, the migrations, and the team behind the tools. Explore Flutter Expertise
We’ll care about your success as much as you do.
Our unicorns read every message and reply, usually the same day.
Start the conversationA 30-minute call about what you’re building.






