vgv-ai-flutter-plugin

Featured

AI plugin to enhance and accelerate Flutter & Dart development, built by Very Good Ventures

plugin 162 stars 22 forks Updated yesterday MIT

Install

Plugins install via a marketplace, in two steps.

This plugin isn't listed in a marketplace we've indexed. Install it directly from its GitHub repository — the README has the setup steps.

View on GitHub

Bundles

Everything this plugin ships — skills, agents, commands, hooks, and MCP servers it bundles.

Skills (14)

Web & Frontend Featured

accessibility

Audits or remediates Flutter widgets against WCAG 2.2 conformance levels A, AA, or AAA across iOS, Android, Web, macOS, Windows, and Linux, covering Semantics labels and screen reader output under VoiceOver and TalkBack, touch target sizes, dragging alternatives, focus order and keyboard navigation, color contrast, text scaling, animation gating on disableAnimations, and form autofillHints, including the test suite that locks every fix in. Use when building, auditing, or reviewing Flutter widgets for accessibility on one or several of those platforms.

161 Updated yesterday
VeryGoodOpenSource
Web & Frontend Featured

animations

Best practices for Flutter animations using the built-in animation framework, covering implicit animations, explicit `AnimationController` animations, page transitions, and Material 3 motion tokens. Use when creating, modifying, or reviewing animations, transitions, motion, or animated widgets, and also for custom route transitions built with `CustomTransitionPage`, a `buildPage` override on a `GoRouteData` subclass, or a `Hero` transition, since motion between routes is animation work even when the surrounding code is `go_router`.

161 Updated yesterday
VeryGoodOpenSource
Code & Development Featured

bloc

Best practices for Bloc state management in Flutter/Dart, covering Cubit versus Bloc, event and state naming, sealed classes with Equatable, the Page/View split with BlocProvider, BlocBuilder, BlocListener, and BlocSelector. Use when writing, modifying, or reviewing code that uses package:bloc, package:flutter_bloc, or package:bloc_test.

161 Updated yesterday
VeryGoodOpenSource
Testing & QA Featured

create-project

Scaffold a new Dart or Flutter project from a Very Good CLI template, covering the flutter_app, dart_package, flutter_package, flutter_plugin, dart_cli, flame_game, and docs_site templates, inferring the right one from what the user wants to build and then installing dependencies. Use when the user says "create a new project", "start a new flutter app", "scaffold a package", "initialize a dart cli", "new flame game", or "generate a plugin".

161 Updated yesterday
VeryGoodOpenSource
AI & Automation Featured

dart-flutter-sdk-upgrade

VGV-specific reference for bumping Dart and Flutter SDK constraints across packages, covering pubspec.yaml environment constraints, CI workflow Flutter versions, and SDK upgrade PR preparation. Use it when upgrading the Flutter or Dart SDK version in any VGV repository, on phrases like "bump Flutter to 3.x", "update SDK constraints", "upgrade Dart SDK", "update CI Flutter version", "bump SDK version", or "prep the SDK upgrade PR", and also when a bump is already underway and something breaks: "pub get fails after I changed the environment block", "version solving failed after bumping the SDK", "a dependency requires an older SDK", "get me unblocked on the Flutter upgrade", or "which Dart version ships with Flutter 3.x". It owns the whole bump, including the conflicts it surfaces, even when the blocking package has a skill of its own.

161 Updated yesterday
VeryGoodOpenSource
Testing & QA Featured

green-gate

Drives a Dart or Flutter package fully green through an autonomous verify-fix-rerun loop across four quality gates: analyze, format, test, and coverage, exiting only when one final iteration proves all four pass with observed numbers. It also owns gate configuration, so plan-only questions belong here: which tool and arguments run each gate, in what order, the coverage target, what leaves the coverage denominator, coverage ignore comments, "just re-check coverage", and "confirm the package is green". Use it when the user says "green gate", "make it green", "get CI green", "fix all the analyze and test failures", "clean this package up before I open a PR", "bring coverage to 100", or "loop until everything passes", and when a run stalls with the same failures repeating round after round. Prefer it over the single-gate testing or analysis skills when a request spans multiple gates or asks to fix and re-verify until clean.

161 Updated yesterday
VeryGoodOpenSource
Testing & QA Featured

internationalization

Best practices for internationalization (i18n) and localization (l10n) in Flutter, using the built-in `flutter_localizations` and `intl` setup with ARB files as the single source of truth. Use when adding, modifying, or reviewing ARB translations, locale setup (`l10n.yaml`, `generate: true` in `pubspec.yaml`, `flutter gen-l10n`, `localizationsDelegates`, `supportedLocales`), BuildContext l10n extensions such as `context.l10n`, hardcoded user- facing strings that should be localized, localized strings passed into shared or reusable widgets, or RTL/directional layout support with `EdgeInsetsDirectional`.

161 Updated yesterday
VeryGoodOpenSource
Data & Documents Featured

layered-architecture

Best practices for VGV layered monorepo architecture in Flutter, covering the four layers Data, Repository, Business Logic, and Presentation, their unidirectional dependency rules, model transformation across layer boundaries, and app bootstrap wiring. Use when structuring a multi-package Flutter app, creating data or repository packages, defining layer boundaries, or wiring dependencies between packages through path dependencies in pubspec.yaml, barrel exports, and RepositoryProvider.

161 Updated yesterday
VeryGoodOpenSource
Code & Development Featured

material-theming

Best practices for Flutter theming with Material 3, treating ThemeData as the single source of truth for colors, typography, component styles, and spacing. Use when creating, modifying, or reviewing ThemeData, ColorScheme, TextTheme, component themes, spacing systems, or light/dark mode support, and whenever widget code carries its own styling: a hardcoded Color, an inline TextStyle, raw padding or gap numbers, the same decoration repeated across widget instances, or a brightness/dark-mode conditional inside build, even when the request only says "review this widget", "cut the duplication", "stop repeating this", or "tidy this up".

161 Updated yesterday
VeryGoodOpenSource
Testing & QA Featured

navigation

Best practices for navigation and routing in Flutter using GoRouter, covering hierarchical route trees, type-safe `@TypedGoRoute` definitions, named navigation, redirects, and deep linking setup. Use when creating, modifying, or reviewing routes, deep links, redirects, or navigation logic that uses package:go_router or package:go_router_builder, including widget tests that mock GoRouter or provide it through `InheritedGoRouter`. Route motion belongs to the animations skill, even inside a `GoRouteData` subclass.

161 Updated yesterday
VeryGoodOpenSource
AI & Automation Featured

static-security

Static security review for Flutter mobile apps and Dart code, flagging hardcoded secrets, insecure storage, unsafe network calls, leaky logs, and vulnerable dependencies. Use when reviewing or writing code that handles secrets, user data, network communication, authentication, or cryptography, or when adding validation to user input such as login, sign-up, or payment forms whose values reach a repository or an API, with prompts like "add validation to this form", "nothing is checked before this hits the API", or "validate these fields". Also use for dependency vulnerability review, a security audit even when the request never says "security": "we cut a release tomorrow, is this pubspec safe", "check our dependencies for known vulnerabilities", "scan for CVEs", "we have an ignored_advisories entry, is that fine", or "these versions are pinned, what are we exposed to".

161 Updated yesterday
VeryGoodOpenSource
Testing & QA Featured

testing

Best practices for Dart unit tests, Flutter widget tests, and golden file tests, covering descriptive group and test naming, setUp lifecycle and test isolation, mocking and verification with package:mocktail, the shared pumpApp test helper, finders and widget interactions. Use when writing, modifying, or reviewing tests that use package:test, package:flutter_test, package:mocktail, or package:bloc_test.

161 Updated yesterday
VeryGoodOpenSource
Show all 14 bundled skills
Web & Frontend Featured

ui-package

Best practices for building a Flutter UI package on top of Material, covering custom components, ThemeExtension-based theming, consistent APIs, widget tests, and scaffolding from the app_ui_package template. Use when creating a UI package and whenever working inside one: adding or reviewing a widget, wiring design tokens, exporting through the barrel file, or writing tests for a widget that lives in a UI package. Triggers on "create a ui package", "add a widget to our ui package", "add a design token", "export it from the barrel", "write tests for this widget in my ui package", and on any request naming a package whose job is shared widgets and design tokens.

161 Updated yesterday
VeryGoodOpenSource
Data & Documents Featured

very-good-analysis-upgrade

Upgrade the very_good_analysis lint package to a new version in any Dart or Flutter package, handling the pubspec.yaml version bump, the lint fixes the new rules force, and the PR. Trigger on phrases like "bump very_good_analysis to 10.0.0", "upgrade very_good_analysis", "update our lint package", "we're due for a lint upgrade", "take very_good_analysis to the latest", or a `dart pub get` conflict reported after a very_good_analysis bump. Use it even when the user only describes the package instead of pointing at it, because the decisions it governs are scope calls that do not need the files on disk: which constraint to write, which warnings to fix, and what stays out of the PR. The trigger is a very_good_analysis version change. A conflict surfaced by a Dart or Flutter SDK bump belongs to dart-flutter-sdk- upgrade instead, even when very_good_analysis is the package blocking resolution.

161 Updated yesterday
VeryGoodOpenSource

Agents (1)

flutter-reviewer.md

Hooks (2)

hooks.json scripts

Quality Score: 83/100

Stars 20%
74
Recency 20%
100
Manifest 20%
100
Documentation 15%
0
Issue Health 10%
50
License 10%
100
Description 5%
100

Details

Author
VeryGoodOpenSource
Repository
VeryGoodOpenSource/vgv-ai-flutter-plugin
Created
6 months ago
Last Updated
yesterday
Language
Shell
License
MIT