一键导入
flutter-widget-patterns
Flutter widget patterns. Use when building UI, fixing layout errors, theming, composing widgets, GoRouter, accessibility, or assets.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Flutter widget patterns. Use when building UI, fixing layout errors, theming, composing widgets, GoRouter, accessibility, or assets.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
MCP server usage for Dart MCP, Firecrawl, Hugging Face. Tool priorities, commands, workflows.
Development process rules. Use when planning complex tasks, implementing incrementally, managing packages, or following communication guidelines.
Dart 3 patterns including switch/if-case, pattern matching, sealed classes, and records. Use when writing exhaustive switches, destructuring, pattern matching on types, or returning multiple values with records.
Core code quality rules for Dart/Flutter. Use when formatting, handling async/null safety, organizing classes, or following Dart best practices.
Code review checklist for PRs/MRs. Use when reviewing pull requests, examining code changes, or when the user asks for a code review.
Data handling patterns for Dart/Flutter. Use when implementing serialization, caching, layer separation, DTOs, repositories, offline-first, or data validation.
基于 SOC 职业分类
| name | flutter-widget-patterns |
| description | Flutter widget patterns. Use when building UI, fixing layout errors, theming, composing widgets, GoRouter, accessibility, or assets. |
context.mounted before context-dependent operations after async gapsaddPostFrameCallback — extremely rarely, only where truly necessarySizedBox.shrink() / SizedBox.expand()ColoredBoxDecoratedBoxgo_router for declarative navigation, deep linking, web supportredirect for authentication flowsGoRouter(routes: [...]) with MaterialApp.router(routerConfig: router)state.pathParameters['id']ThemeData; define theme + darkTheme; themeMode for toggleColorScheme.fromSeed() for harmonious palettesTheme.of(context)ThemeExtension<T>; implement copyWith and lerpThemeData.extensions; access via Theme.of(context).extension<T>()!resolveWith for state-dependent values (pressed, hovered, etc.)WidgetStateProperty.all when same for all statesgoogle_fonts package; one or two font familiesListView.builder / SliverList for long lists (lazy loading)compute() for CPU-intensive operations to avoid blocking UI threadRepaintBoundary for expensive custom paintersSemantics widget for descriptive labelscached_network_image for network imagesloadingBuilder and errorBuilder