vgv-accessibility
Accessibility
Flutter accessibility auditing and remediation across WCAG 2.1 conformance levels A, AA, and AAA — semantics, touch targets, focus management, color contrast, text scaling, and motion sensitivity across mobile, desktop, and web platforms.
Core Standards
Apply these standards to ALL accessibility work:
- Begin every audit by asking the user which WCAG 2.1 conformance level they are targeting (A, AA, or AAA) — never assume AA
- Begin every audit by asking which platforms are targeted (mobile, desktop, web) — screen reader behavior and keyboard requirements differ per platform
- Every
Imagemust havesemanticLabelor be wrapped inSemantics(label:)— decorative images useexcludeFromSemantics: true - Never use
GestureDetectorfor tap targets — useInkWell,ElevatedButton,TextButton, orIconButton;GestureDetectoris pointer-only and unreachable via keyboard or switch access - All interactive elements: 48x48 dp minimum touch target — enforce with
SizedBox,ConstrainedBox, orpadding - Never use color as the sole differentiator — always pair color with a label, icon, or shape
- All animations must respect
MediaQuery.disableAnimations— gate everyAnimationController,AnimatedContainer, andHerotransition on this flag - Icon-only buttons must have
TooltiporSemantics(label:)— screen readers have no other way to convey purpose - Never use
ExcludeSemanticson non-decorative content — doing so hides meaningful information from assistive technology
More from verygoodopensource/very_good_ai_flutter_plugin
vgv-static-security
>
26vgv-navigation
Best practices for navigation and routing in Flutter using GoRouter.
7vgv-material-theming
Best practices for Flutter theming using Material 3.
7vgv-internationalization
Best practices for internationalization (i18n) and localization (l10n) in Flutter.
7vgv-bloc
Best practices for Bloc state management in Flutter/Dart. Use when writing, modifying, or reviewing code that uses package:bloc, package:flutter_bloc, or package:bloc_test.
5vgv-ui-package
Best practices for building a Flutter UI package on top of Material — custom components, ThemeExtension-based theming, consistent APIs, and widget tests. Supports app_ui_package template.
5