Mobile Optimization Guide
Feature documentation for tenant administrators
Target Audience: Developers, DesignersGuide to mobile responsiveness, touch interactions, and performance optimization in Qiwako
Table of Contents
Overview
Qiwako adopts a Mobile-First design philosophy. This means we design for the smallest screen first and progressively enhance the experience for larger screens.
Key Goals
- Fluid Layouts: Content adapts gracefully to any screen width.
- Touch-Friendly: All interactive elements are large enough for fingers (min 44x44px).
- Fast Loading: Optimized assets for cellular networks.
Responsive Design Principles
We use Tailwind CSS breakpoints to handle responsiveness.
Breakpoints
| Breakpoint | Width | Device |
|---|---|---|
| Default | < 640px | Mobile (Portrait) |
sm |
640px | Mobile (Landscape) / Small Tablet |
md |
768px | Tablet (Portrait) |
lg |
1024px | Tablet (Landscape) / Laptop |
xl |
1280px | Desktop |
2xl |
1536px | Large Desktop |
Layout Patterns
1. Stacking (Mobile) vs. Grid (Desktop)
<div class="grid grid-cols-1 md:grid-cols-3 gap-4">
<!-- Items stack on mobile, 3 columns on desktop -->
</div>
2. Hidden/Visible Elements
<!-- Hidden on mobile, visible on desktop -->
<div class="hidden md:block">Sidebar</div>
<!-- Visible on mobile, hidden on desktop -->
<div class="block md:hidden">Mobile Menu Button</div>
Touch Interactions
Touch Targets
Ensure all buttons and links have a minimum hit area of 44x44 pixels.
<button class="p-3 min-h-[44px] min-w-[44px]">
Click Me
</button>
Gestures
We use your-domain.com for handling simple gestures like swipe to close menus.
<div @touchstart="startSwipe" @touchend="endSwipe">
Swipeable Content
</div>
Performance Optimization
Mobile users often have slower connections and limited data.
Image Optimization
- Lazy Loading: Use
loading="lazy"on all images below the fold. - WebP Format: Serve WebP images for smaller file sizes.
- Responsive Images: Use
srcsetto serve appropriate sizes.
<img src="your-domain.com"
srcset="your-domain.com 500w, your-domain.com 1000w"
loading="lazy"
alt="Optimized Image">
CSS/JS Minimization
- PurgeCSS: Remove unused CSS classes (handled by Tailwind).
- Defer JS: Defer non-critical JavaScript execution.
Testing
Device Testing
Test on real devices whenever possible:
* iOS (Safari)
* Android (Chrome)
Browser Tools
Use Chrome DevTools "Device Mode" to simulate:
* Various screen sizes
* Network throttling (3G/4G)
* Touch events
Lighthouse
Run Lighthouse audits specifically for "Mobile" to identify performance and usability issues.
Related Documentation
Related Documentation
Mobile Optimization - Qiwako CMS
Feature documentation for tenant administrators
PWA Features & Implementation
Feature documentation for tenant administrators
Progressive Web App (PWA) - Qiwako CMS
Feature documentation for tenant administrators