Flutter & Dart Development

Build beautiful native mobile and web apps with Flutter framework

# Flutter Dart

This document provides comprehensive guidelines for flutter dart development and best practices.

---

## Flutter Core Concepts

1. **Everything**
   - Everything is a Widget philosophy
   - Implement proper everything is a widget philosophy
   - Follow best practices for optimal results

2. **Immutable**
   - Immutable widget trees and state management
   - Implement proper immutable widget trees and state management
   - Follow best practices for optimal results

3. **Hot**
   - Hot reload for rapid development
   - Implement proper hot reload for rapid development
   - Follow best practices for optimal results

4. **Platform**
   - Platform channels for native functionality
   - Implement proper platform channels for native functionality
   - Follow best practices for optimal results

5. **Custom**
   - Custom painting and animations
   - Implement proper custom painting and animations
   - Follow best practices for optimal results

---

## Widget Development

6. **StatelessWidget**
   - StatelessWidget for immutable UI
   - Implement proper statelesswidget for immutable ui
   - Follow best practices for optimal results

7. **StatefulWidget**
   - StatefulWidget for dynamic UI
   - Implement proper statefulwidget for dynamic ui
   - Follow best practices for optimal results

8. **Use**
   - Use const constructors for performance
   - Implement proper use const constructors for performance
   - Follow best practices for optimal results

9. **Implement**
   - Implement proper widget composition
   - Implement proper implement proper widget composition
   - Follow best practices for optimal results

10. **Custom**
   - Custom widgets for reusability
   - Implement proper custom widgets for reusability
   - Follow best practices for optimal results

---

## State Management

11. **Provider**
   - Provider for simple state management
   - Implement proper provider for simple state management
   - Follow best practices for optimal results

12. **Bloc**
   - Bloc pattern for complex business logic
   - Implement proper bloc pattern for complex business logic
   - Follow best practices for optimal results

13. **Riverpod**
   - Riverpod for dependency injection
   - Implement proper riverpod for dependency injection
   - Follow best practices for optimal results

14. **GetX**
   - GetX for rapid development
   - Implement proper getx for rapid development
   - Follow best practices for optimal results

15. **setState**
   - setState for local widget state
   - Implement proper setstate for local widget state
   - Follow best practices for optimal results

---

## UI Development

16. **Material**
   - Material Design with Material widgets
   - Implement proper material design with material widgets
   - Follow best practices for optimal results

17. **Cupertino**
   - Cupertino for iOS-style design
   - Implement proper cupertino for ios-style design
   - Follow best practices for optimal results

18. **Custom**
   - Custom themes and theming
   - Implement proper custom themes and theming
   - Follow best practices for optimal results

19. **Responsive**
   - Responsive design with MediaQuery
   - Implement proper responsive design with mediaquery
   - Follow best practices for optimal results

20. **Accessibility**
   - Accessibility implementation
   - Implement proper accessibility implementation
   - Follow best practices for optimal results

---

## Navigation & Routing

21. **Navigator**
   - Navigator 2.0 for complex routing
   - Implement proper navigator 2.0 for complex routing
   - Follow best practices for optimal results

22. **Named**
   - Named routes for simple navigation
   - Implement proper named routes for simple navigation
   - Follow best practices for optimal results

23. **Route**
   - Route guards and middleware
   - Implement proper route guards and middleware
   - Follow best practices for optimal results

24. **Deep**
   - Deep linking support
   - Implement proper deep linking support
   - Follow best practices for optimal results

25. **Bottom**
   - Bottom navigation and tabs
   - Implement proper bottom navigation and tabs
   - Follow best practices for optimal results

---

## Platform Integration

26. **Platform**
   - Platform channels for native code
   - Implement proper platform channels for native code
   - Follow best practices for optimal results

27. **Method**
   - Method channels for two-way communication
   - Implement proper method channels for two-way communication
   - Follow best practices for optimal results

28. **Event**
   - Event channels for streaming data
   - Implement proper event channels for streaming data
   - Follow best practices for optimal results

29. **Plugin**
   - Plugin development
   - Implement proper plugin development
   - Follow best practices for optimal results

30. **Platform-specific**
   - Platform-specific implementations
   - Implement proper platform-specific implementations
   - Follow best practices for optimal results

---

## Performance

31. **Widget**
   - Widget rebuilding optimization
   - Implement proper widget rebuilding optimization
   - Follow best practices for optimal results

32. **Image**
   - Image caching and optimization
   - Implement proper image caching and optimization
   - Follow best practices for optimal results

33. **Memory**
   - Memory management
   - Implement proper memory management
   - Follow best practices for optimal results

34. **Profile**
   - Profile and debug performance
   - Implement proper profile and debug performance
   - Follow best practices for optimal results

35. **Build**
   - Build optimization for release
   - Implement proper build optimization for release
   - Follow best practices for optimal results

---

## Testing

36. **Unit**
   - Unit testing with test package
   - Implement proper unit testing with test package
   - Follow best practices for optimal results

37. **Widget**
   - Widget testing for UI components
   - Implement proper widget testing for ui components
   - Follow best practices for optimal results

38. **Integration**
   - Integration testing for full flows
   - Implement proper integration testing for full flows
   - Follow best practices for optimal results

39. **Golden**
   - Golden tests for UI consistency
   - Implement proper golden tests for ui consistency
   - Follow best practices for optimal results

40. **Mockito**
   - Mockito for mocking dependencies
   - Implement proper mockito for mocking dependencies
   - Follow best practices for optimal results

---

## Deployment

41. **Android**
   - Android release builds
   - Implement proper android release builds
   - Follow best practices for optimal results

42. **iOS**
   - iOS App Store deployment
   - Implement proper ios app store deployment
   - Follow best practices for optimal results

43. **Web**
   - Web deployment
   - Implement proper web deployment
   - Follow best practices for optimal results

44. **CI/CD**
   - CI/CD with GitHub Actions
   - Implement proper ci/cd with github actions
   - Follow best practices for optimal results

45. **Code**
   - Code signing and certificates
   - Implement proper code signing and certificates
   - Follow best practices for optimal results

---

## Summary Checklist

- [ ] Core principles implemented
- [ ] Best practices followed
- [ ] Performance optimized
- [ ] Security measures in place
- [ ] Testing strategy implemented
- [ ] Documentation completed
- [ ] Monitoring configured
- [ ] Production deployment ready

---

Follow these comprehensive guidelines for successful flutter dart implementation.
Flutter & Dart Development - Cursor IDE AI Rule