スキル一覧に戻る
HoangNguyen0403

flutter-bloc-state-management

by HoangNguyen0403

flutter-bloc-state-managementは、other分野における実用的なスキルです。複雑な課題への対応力を強化し、業務効率と成果の質を改善します。

111🍴 40📅 2026年1月23日
GitHubで見るManusで実行

SKILL.md


name: Flutter BLoC State Management description: Standards for predictable state management using flutter_bloc, freezed, and equatable. metadata: labels: [flutter, state-management, bloc, cubit, freezed, equatable] triggers: files: ['_bloc.dart', '_cubit.dart', '_state.dart', '_event.dart'] keywords: [ BlocProvider, BlocBuilder, BlocListener, Cubit, Emitter, transformer, Equatable, ]

BLoC State Management

Priority: P0 (CRITICAL)

Predictable state management separating business logic from UI using flutter_bloc, freezed, or equatable.

Structure

lib/features/auth/
├── bloc/
│   ├── auth_bloc.dart
│   ├── auth_event.dart # (@freezed or Equatable)
│   └── auth_state.dart # (@freezed or Equatable)

Implementation Guidelines

  • States & Events: Use @freezed for union states. See references/bloc_templates.md.
  • Error Handling: Use Failure objects; avoid throwing exceptions.
  • Async Data: Use emit.forEach for streams.
  • Concurrency: Use transformer for event debouncing.
  • Testing: Use blocTest for state transition verification.
  • Injection: Register BLoCs as @injectable (Factory).

Anti-Patterns

  • No Manual Emit: **Avoid .then()**: Do not call emit() inside Future.then; always use await or emit.forEach.
  • No UI Logic: **Logic in Builder**: Do not perform calculations or data formatting inside BlocBuilder.
  • No Cross-Bloc Reference: **Tight Coupling**: Do not pass a BLoC instance into another BLoC; use streams to coordinate.

layer-based-clean-architecture | dependency-injection | error-handling

スコア

総合スコア

85/100

リポジトリの品質指標に基づく評価

SKILL.md

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

+20
LICENSE

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

+10
説明文

100文字以上の説明がある

+10
人気

GitHub Stars 100以上

+5
最近の活動

1ヶ月以内に更新

+10
フォーク

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

+5
Issue管理

オープンIssueが50未満

+5
言語

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

+5
タグ

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

+5

レビュー

💬

レビュー機能は近日公開予定です