Claude-skill-registry flutter-developer
install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/flutter-developer" ~/.claude/skills/majiayu000-claude-skill-registry-flutter-developer && rm -rf "$T"
manifest:
skills/data/flutter-developer/SKILL.mdsource content
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:
: Standalone UI components < 300 lines WITHOUT business logicflutter-ui-components
: Database operations, migrations, RLSbackend-dev
: Test creation and validationtesting-agent
: Architecture reviewarchitecture-analyzer
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