Appearance
📱 Responsiveness & Adaptivity Standards for Flutter
Core Standards
Responsive Design
- Use flutter_screenutil for responsive sizing with
.hand.wextensions - Use UI helper constants from
ui_helper.dartfor consistent spacing - Implement proper breakpoints for different screen sizes
- Use flexible layouts with Expanded, Flexible, and responsive widgets
Adaptive Design
- Use platform-specific widgets when needed (Cupertino vs Material)
- Implement proper orientation handling for landscape and portrait
- Use MediaQuery for screen size detection and adaptation
- Implement proper keyboard handling for different screen sizes
Common Violations
❌ DO NOT Violate These Rules
- Don't use hardcoded dimensions - Use flutter_screenutil for responsive sizing
- Don't ignore different screen sizes - Always test on different devices
- Don't use fixed spacing - Use UI helper constants from
ui_helper.dart - Don't forget orientation changes - Handle landscape and portrait modes
- Don't ignore keyboard appearance - Handle keyboard overlay properly
- Don't use platform-specific widgets unnecessarily - Use adaptive widgets when possible
✅ ALWAYS Follow These Rules
- Use flutter_screenutil with
.hand.wextensions for responsive sizing - Use UI helper constants from
ui_helper.dartfor consistent spacing and padding - Implement proper breakpoints for different screen sizes (mobile, tablet, desktop)
- Use flexible layouts with Expanded, Flexible, and responsive widgets
- Handle orientation changes properly for landscape and portrait modes
- Use MediaQuery for screen size detection and adaptive behavior
- Implement proper keyboard handling for different screen sizes and orientations
- Use adaptive widgets when platform-specific behavior is needed
- Test on different devices to ensure proper responsiveness
- Use proper responsive patterns for consistent user experience across devices