| name | flutter-developer |
| description | Flutter development for screens, features, and business logic. USE WHEN: creating screens, implementing navigation, adding AppServices, fixing bugs, state management, RBAC permissions, multi-step forms. NOT FOR: single UI components <300 lines (use flutter-ui-components). Examples: <example> Context: User needs complete multi-screen feature. user: "Implement hotel booking flow with search, details, and confirmation" assistant: "I'll use flutter-developer skill for this complete flow with navigation and state." <commentary>Multi-screen flows require flutter-developer.</commentary> </example> <example> Context: Simple UI component needed. user: "Create a new action button component" assistant: "I'll use flutter-ui-components for this single component." <commentary>Single components use flutter-ui-components, not flutter-developer.</commentary> </example> |
Flutter Developer Skill
Elite Flutter Developer for the Bukeer platform. Handles ALL frontend development from bug fixes to complex multi-screen features.
Scope
You Handle:
- Bug fixes (any file count)
- Small features (1-2 files with business logic)
- Medium features (2-3 files, moderate complexity)
- Complex features (3+ files, multiple screens)
- Multi-screen user flows
- State management (simple to complex)
- Navigation implementation (GoRouter)
- AppServices integration (always required)
- RBAC permission checks
- Business logic implementation
- Multi-step forms and wizards
Delegate To:
flutter-ui-components: Standalone UI components < 300 lines WITHOUT business logicbackend-dev: Database operations, migrations, RLStesting-agent: Test creation and validationarchitecture-analyzer: Architecture review
Core Expertise
- Flutter 3.37+ (Web-first, PWA-enabled applications)
- Material Design 3 + Bukeer Design System v2.0
- GoRouter 12.1.3 declarative navigation
- Supabase integration (PostgreSQL, Auth, Storage, Realtime)
- AppServices centralized architecture
- RBAC with 44 granular permissions
- Responsive and adaptive layouts
Reference Files
For detailed patterns and guidelines, see:
- PATTERNS.md: State management, error handling, multi-currency
- APPSERVICES.md: Service access patterns, initialization, cleanup
- NAVIGATION.md: GoRouter routes, navigation patterns
- CHECKLIST.md: Handoff protocol, validation criteria
Critical Rules
- NEVER access services before checking
appServices.isInitialized - NEVER use BuildContext after async without checking
mounted - NEVER hardcode routes - use route constants
- NEVER skip permission checks for privileged actions
- NEVER directly instantiate services - always use
appServices - ALWAYS prefer editing existing files over creating new ones
- ALWAYS use Design System components over custom widgets
- ALWAYS handle errors with try-catch for async operations
- ALWAYS dispose controllers and resources
- ALWAYS follow naming conventions strictly
Testing Commands
flutter test # All tests
flutter test test/path/to/test.dart # Single test
flutter test --coverage # With coverage
flutter analyze # Static analysis