# Responsive Design Checklist Quick reference for making your components responsive. --- ## 🎯 Quick Wins ### 1. Replace Fixed Grids ```typescript // ❌ Before
// ✅ After ``` ### 2. Responsive Text Sizes ```typescript // ❌ Before

// ✅ After

``` ### 3. Responsive Padding ```typescript // ❌ Before
// ✅ After
``` ### 4. Responsive Spacing ```typescript // ❌ Before
// ✅ After
``` ### 5. Stack on Mobile, Inline on Desktop ```typescript // ❌ Before
// ✅ After
``` --- ## 📱 Component Patterns ### Buttons ```typescript // Full width on mobile, auto on desktop // Responsive button group
``` ### Cards ```typescript
{/* Content */}
``` ### Forms ```typescript
``` ### Images ```typescript description ``` ### Modals ```typescript
{/* Modal content */}
``` --- ## 🎨 Typography Scale ```typescript // Headings h1: "text-xl sm:text-2xl md:text-3xl lg:text-4xl" h2: "text-lg sm:text-xl md:text-2xl lg:text-3xl" h3: "text-base sm:text-lg md:text-xl lg:text-2xl" h4: "text-sm sm:text-base md:text-lg" // Body large: "text-base sm:text-lg" normal: "text-sm sm:text-base" small: "text-xs sm:text-sm" ``` --- ## 📏 Spacing Scale ```typescript // Padding xs: "p-2 sm:p-3" sm: "p-3 sm:p-4" md: "p-4 sm:p-5 md:p-6" lg: "p-5 sm:p-6 md:p-7 lg:p-8" // Gap xs: "gap-2 sm:gap-2.5 md:gap-3" sm: "gap-3 sm:gap-4" md: "gap-4 sm:gap-5 md:gap-6" lg: "gap-6 sm:gap-7 md:gap-8" // Space-y xs: "space-y-2 sm:space-y-3" sm: "space-y-3 sm:space-y-4" md: "space-y-4 sm:space-y-5 md:space-y-6" lg: "space-y-6 sm:space-y-7 md:space-y-8" ``` --- ## 🎯 Common Layouts ### Dashboard Stats Grid ```typescript ``` ### Two-Column Form ```typescript ``` ### Three-Column Content ```typescript ``` ### Sidebar + Content ```typescript
{/* Sidebar */}
{/* Main content */}
``` --- ## ✅ Testing Checklist ### Visual Testing - [ ] Test at 375px (iPhone) - [ ] Test at 768px (iPad) - [ ] Test at 1024px (Laptop) - [ ] Test at 1920px (Desktop) - [ ] No horizontal scrolling - [ ] All text is readable - [ ] Images scale properly - [ ] No overlapping elements ### Interaction Testing - [ ] All buttons are tappable (44x44px min) - [ ] Forms work on mobile - [ ] Dropdowns don't overflow - [ ] Modals fit on screen - [ ] Navigation menu works - [ ] Links are easy to tap ### Accessibility Testing - [ ] Tab through all interactive elements - [ ] Escape closes menus/modals - [ ] Focus indicators visible - [ ] Screen reader announces changes - [ ] Color contrast meets WCAG AA - [ ] Text can be zoomed to 200% --- ## 🚫 Common Mistakes to Avoid ### ❌ Don't Use Fixed Widths ```typescript // Bad
// Good
``` ### ❌ Don't Forget Mobile-First ```typescript // Bad - Desktop first
// Good - Mobile first
``` ### ❌ Don't Use Absolute Positioning Without Responsive Adjustments ```typescript // Bad
// Good
``` ### ❌ Don't Forget Touch Targets ```typescript // Bad