← ClaudeAtlas

dart-flutter-patternslisted

Dart 3.x / Flutter discipline — null safety mandatory; force-unwrap (!) banned outside justified narrow cases; const constructors everywhere possible; Riverpod / BLoC for state; freezed for immutable models + sealed unions; go_router for navigation; structured concurrency via async/await + Stream; Material 3 / Cupertino theming via tokens; analyser at fatal-infos + fatal-warnings. Auto-fires on Dart / Flutter project files.
Nmor/the-claude-council · ★ 9 · Code & Development · score 69
Install: claude install-skill Nmor/the-claude-council
> Migrated 2026-06-02 from `~/.claude/rules-library/dart/` as part of the lazy-rules-loading plan. Phase H will delete the source files. # dart-flutter-patterns ## Standards Cited - **Dart Language Specification 3.x** (dart.dev/guides/language/spec) — null safety, sealed classes, records - **Effective Dart** (dart.dev/effective-dart) — style + usage + design + documentation - **Flutter Material Design 3** (m3.material.io) — token system + adaptive theming - **WCAG 2.2 §1.4.11** (W3C Recommendation, October 2023) — non-text contrast 3:1 for UI components - **WCAG 2.2 §2.5.8** (W3C Recommendation, October 2023) — target size minimum 24×24 CSS pixels (Flutter: 48dp) - **OWASP Mobile Top 10 2024 M1** (owasp.org/www-project-mobile-top-10) — improper credential usage (Dart secure storage discipline) - **CWE-798** — Use of Hard-coded Credentials (no API keys in source) - **ECMAScript Internationalization API** — `intl` package follows the same locale model <!-- ============================================================ Section: dart/coding-style.md ============================================================ --> --- paths: - "**/*.dart" - "**/pubspec.yaml" --- # Dart/Flutter Coding Style > Extends `common/coding-style.md` with Dart/Flutter-specific conventions. ## Naming Conventions - Classes/enums/typedefs: `UpperCamelCase` - Libraries/packages/directories/files: `lowercase_with_underscores` - Variables/functions/parameters: `lowerCamelCase` - Constants: `low