flutter-expert

When reviewing or writing code, apply these guidelines:

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "flutter-expert" with this command: npx skills add oimiragieo/agent-studio/oimiragieo-agent-studio-flutter-expert

Flutter Expert

flutter core rules

When reviewing or writing code, apply these guidelines:

  • Adapt to existing project architecture while maintaining clean code principles.

  • Use Flutter 3.x features and Material 3 design.

  • Implement proper null safety practices.

  • Follow proper naming conventions.

  • Use proper widget composition.

  • Keep widgets small and focused.

  • Use const constructors when possible.

  • Implement proper widget keys.

  • Follow proper layout principles.

flutter feature rules

When reviewing or writing code, apply these guidelines:

  • Adapt to existing project architecture while maintaining clean code principles.

  • Use Flutter 3.x features and Material 3 design.

  • Implement clean architecture with BLoC pattern.

  • Follow proper state management principles.

  • Use proper dependency injection.

  • Implement proper error handling.

  • Follow proper state management with BLoC.

  • Implement proper dependency injection using GetIt.

flutter general best practices

When reviewing or writing code, apply these guidelines:

  • Adapt to existing project architecture while maintaining clean code principles.

  • Use Flutter 3.x features and Material 3 design.

  • Implement clean architecture with BLoC pattern.

  • Follow proper state management principles.

  • Use proper dependency injection.

  • Implement proper error handling.

  • Follow platform-specific design guidelines.

  • Use proper localization techniques.

flutter performance rules

When reviewing or writing code, apply these guidelines:

  • Use proper image caching.

  • Implement proper list view optimization.

  • Use proper build methods optimization.

  • Follow proper state management patterns.

  • Implement proper memory management.

  • Use proper platform channels when needed.

  • Follow proper compilation optimization techniques.

flutter presentation rules

When reviewing or writing code, apply these guidelines:

  • Adapt to existing project architecture while maintaining clean code principles.

  • Use Flutter 3.x features and

Consolidated Skills

This expert skill consolidates 1 individual skills:

  • flutter-expert

Iron Laws

  • ALWAYS use const constructors for widgets that don't depend on mutable state — non-const widgets rebuild on every parent rebuild, causing unnecessary repaints and dropped frames.

  • NEVER perform async operations directly in build() — async calls in build() fire on every rebuild, causing duplicate network requests, race conditions, and unpredictable UI state.

  • ALWAYS separate business logic from UI using BLoC, Riverpod, or an equivalent state management pattern — mixing logic in widgets makes code untestable and tightly coupled to the widget tree.

  • NEVER use setState for shared state that spans multiple widgets — setState only rebuilds the local widget subtree; shared state must be lifted to a state management layer.

  • ALWAYS implement null safety fully (no ! force-unwraps on user or network data) — unchecked null dereferences crash the app at runtime with no error boundary.

Anti-Patterns

Anti-Pattern Why It Fails Correct Approach

Non-const stateless widgets Rebuilt on every parent setState; wastes frame budget Add const to all stateless widget constructors and their instantiation

Calling Future in build()

Re-fires on every rebuild; duplicates API calls and causes flickering Use FutureBuilder with a stored Future field initialized in initState

Business logic in widgets Untestable; coupled to widget lifecycle; duplicated across screens Move logic to BLoC/Cubit or Riverpod providers; widgets observe state only

setState for cross-widget state Only rebuilds local subtree; sibling widgets stay stale Use InheritedWidget , Provider , or BLoC streams for shared state

Force-unwrapping nullable API data Runtime null crash with no recovery path Use null-aware operators (?. , ?? ) and handle null states explicitly in UI

Memory Protocol (MANDATORY)

Before starting:

cat .claude/context/memory/learnings.md

After completing: Record any new patterns or exceptions discovered.

ASSUME INTERRUPTION: Your context may reset. If it's not in memory, it didn't happen.

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Coding

pyqt6-ui-development-rules

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

code-analyzer

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

gcloud-cli

No summary provided by upstream source.

Repository SourceNeeds Review