This skill provides specialized capabilities for Flutter app development and Dart programming. It enables execution of Flutter CLI commands, widget generation, state management configuration, and comprehensive debugging with Flutter DevTools.
Allowed Tools
bash - Execute Flutter CLI, Dart commands, and pub operations
read - Analyze Flutter project files, widgets, and configurations
write - Generate and modify Dart code and Flutter configurations
edit - Update existing Flutter widgets and configurations
glob - Search for Dart files and Flutter assets
grep - Search for patterns in Flutter codebase
Capabilities
Core Development
Flutter CLI Operations
Create new Flutter projects with templates
Run Flutter apps on devices and emulators
Build release APK, AAB, and IPA files
Execute Flutter analyze for linting
Run Flutter doctor for environment diagnostics
Dart Language Features
Generate null-safe Dart code
Implement async/await patterns with Futures
Create Dart classes with factory constructors
Use extension methods effectively
Implement sealed classes and pattern matching
Widget Development
Create custom StatelessWidget and StatefulWidget
Implement InheritedWidget for dependency injection
Build CustomPainter for custom graphics
Create responsive layouts with LayoutBuilder
Implement animations with AnimationController
State Management
BLoC Pattern
Generate BLoC classes with events and states
Configure flutter_bloc with BlocProvider
Implement Cubit for simpler state management
Set up BlocObserver for debugging
Handle state persistence with hydrated_bloc
Provider Pattern
Configure ChangeNotifierProvider
Implement Consumer and Selector widgets
Set up MultiProvider for multiple states
Use ProxyProvider for dependent providers
Riverpod
Configure ProviderScope and ProviderContainer
Implement StateNotifier and StateNotifierProvider
Create AsyncNotifier for async operations
Use Riverpod code generation
Navigation
GoRouter
Configure declarative routing
Implement deep linking with path parameters
Set up redirect guards for authentication
Handle nested navigation with ShellRoute
Implement type-safe routing with code generation
AutoRoute
Generate route configurations
Implement nested routers
Configure route guards
Handle path parameters and query strings
Code Generation
Build Runner
Configure Freezed for immutable classes
Set up JsonSerializable for JSON parsing
Implement Hive type adapters
Generate mock classes with Mockito
Use built_value for value types
Testing
Testing Frameworks
Configure unit tests with test package
Implement widget tests with flutter_test
Set up integration tests
Use golden tests for UI verification
Mock dependencies with Mockito
Performance
Performance Optimization
Implement const constructors
Use RepaintBoundary effectively
Configure image caching
Implement lazy loading with ListView.builder
Profile with Flutter DevTools
Target Processes
This skill integrates with the following processes:
flutter-app-scaffolding.js - Project setup and configuration
cross-platform-ui-library.js - Shared widget development