Back to list
HoangNguyen0403

flutter-riverpod-state-management

by HoangNguyen0403

A collection of Agent Skills Standard and Best Practice for Programming Languages, Frameworks that help our AI Agent follow best practies on frameworks and programming laguages

111🍴 40📅 Jan 23, 2026

SKILL.md


name: Flutter Riverpod State Management description: Reactive state management using Riverpod 2.0 with code generation. metadata: labels: [flutter, state-management, riverpod, dependency-injection, reactive] triggers: files: ['_provider.dart', '_notifier.dart'] keywords: [riverpod, ProviderScope, ConsumerWidget, Notifier, AsyncValue, ref.watch, @riverpod]

Riverpod State Management

Priority: P0 (CRITICAL)

Type-safe, compile-time safe reactive state management using riverpod and riverpod_generator.

Structure

lib/
├── providers/ # Global providers and services
└── features/user/
    ├── providers/ # Feature-specific providers
    └── models/    # @freezed domain models

Implementation Guidelines

  • Generator First: Use @riverpod annotations and riverpod_generator. Avoid manual Provider definitions.
  • Immutability: Maintain immutable states. Use Freezed for all state models.
  • Provider Methods:
    • ref.watch(): Use inside build() to rebuild on changes.
    • ref.listen(): Use for side-effects (navigation, dialogs).
    • ref.read(): Use ONLY in callbacks (onPressed).
  • Asynchronous Data: Use AsyncNotifier for complex async logic. Access data via .when() or AsyncValue pattern-matching.
  • Architecture: Enforce 3-layer separation (Data, Domain, Presentation).
  • Linting: Enable riverpod_lint and custom_lint for dependency cycle detection.

Anti-Patterns

  • Building Inside Providers: Don't perform side-effects inside provider initialization.
  • Context Access: Never pass BuildContext into a Notifier/Provider.
  • Dynamic Providers: Avoid local provider instantiation; keep them global.

layer-based-clean-architecture | dependency-injection | testing

Score

Total Score

85/100

Based on repository quality metrics

SKILL.md

SKILL.mdファイルが含まれている

+20
LICENSE

ライセンスが設定されている

+10
説明文

100文字以上の説明がある

+10
人気

GitHub Stars 100以上

+5
最近の活動

1ヶ月以内に更新

+10
フォーク

10回以上フォークされている

+5
Issue管理

オープンIssueが50未満

+5
言語

プログラミング言語が設定されている

+5
タグ

1つ以上のタグが設定されている

+5

Reviews

💬

Reviews coming soon