From ux-design-assistant
Master mobile UX - iOS HIG, Material Design, gestures, responsive design, platform optimization
How this skill is triggered — by the user, by Claude, or both
Slash command
/ux-design-assistant:skills/mobile-uxThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
> **Atomic Skill**: Design native-feeling mobile experiences for iOS and Android platforms
Atomic Skill: Design native-feeling mobile experiences for iOS and Android platforms
This skill provides platform-specific guidance for creating optimal mobile user experiences.
Skill("custom-plugin-ux-design:mobile-ux")
interface MobileUXParams {
// Required
task: "ios" | "android" | "cross-platform" | "responsive" | "gesture";
scope: string;
// Optional
platform_priority?: "ios" | "android" | "equal";
app_type?: "native" | "hybrid" | "pwa";
device_targets?: ("phone" | "tablet" | "foldable")[];
os_versions?: {
ios?: string;
android?: string;
};
}
task:
type: enum
required: true
values: [ios, android, cross-platform, responsive, gesture]
scope:
type: string
required: true
min_length: 5
platform_priority:
type: enum
default: "equal"
MOBILE UX EXECUTION
────────────────────────────────────────────
Step 1: ANALYZE REQUIREMENTS
├── Identify target platforms
├── Define device matrix
└── Set priority platform
Step 2: RESEARCH GUIDELINES
├── Review platform HIG
├── Study native patterns
└── Identify constraints
Step 3: DESIGN PATTERNS
├── Navigation structure
├── Touch interactions
├── Platform-specific components
└── Gesture mapping
Step 4: ADAPT FOR PLATFORMS
├── iOS adaptations
├── Android adaptations
├── Cross-platform unification
└── Responsive breakpoints
Step 5: VALIDATE
├── Test on device matrix
├── Verify platform compliance
└── Document exceptions
────────────────────────────────────────────
retry_config:
max_attempts: 3
backoff_type: exponential
initial_delay_ms: 1000
max_delay_ms: 10000
retryable_errors:
- DEVICE_SYNC_FAILED
- PREVIEW_TIMEOUT
interface MobileUXLog {
timestamp: string;
event: "pattern_selected" | "adaptation_created" | "device_tested";
platform: string;
device: string;
compliance_score: number;
}
iOS DESIGN PRINCIPLES
├── Clarity (legible, clear icons)
├── Deference (content first)
├── Depth (layers, motion)
iOS NAVIGATION
├── Tab bar (5 max)
├── Navigation bar
├── Tool bar
├── Side bar (iPad)
└── Search
iOS COMPONENTS
├── SF Symbols
├── System controls
├── Sheets
├── Popovers
└── Action sheets
MATERIAL PRINCIPLES
├── Material as metaphor
├── Bold, graphic, intentional
├── Motion provides meaning
MATERIAL NAVIGATION
├── Bottom navigation
├── Navigation drawer
├── Navigation rail
├── Tabs
└── Search
MATERIAL COMPONENTS
├── FAB (Floating Action Button)
├── Cards
├── Chips
├── Dialogs
└── Bottom sheets
TOUCH TARGETS
├── iOS: 44x44 pt minimum
├── Android: 48x48 dp minimum
├── Spacing: 8dp between targets
STANDARD GESTURES
├── Tap (select, activate)
├── Long press (context menu)
├── Swipe (navigate, actions)
├── Pinch (zoom)
├── Rotate (rotate content)
├── Pan (scroll, move)
└── Edge swipe (back navigation)
GESTURE CONFLICTS
├── System gesture areas
├── Platform-specific gestures
└── Custom gesture rules
BREAKPOINTS
├── Small phone: 320-375pt
├── Regular phone: 375-414pt
├── Large phone: 414-428pt
├── Small tablet: 768-834pt
├── Large tablet: 834-1024pt
└── Foldable: Variable
ADAPTIVE LAYOUTS
├── Compact (phone portrait)
├── Regular (phone landscape, tablet)
├── Expanded (tablet landscape)
SAFE AREAS
├── Status bar
├── Home indicator
├── Notch/Dynamic Island
├── Gesture areas
└── Camera cutouts
PERFORMANCE
├── 60fps animations
├── Lazy loading
├── Image optimization
├── Memory management
└── Network efficiency
NATIVE FEEL
├── Platform animations
├── Haptic feedback
├── System sounds
├── Platform typography
└── Native controls
| Aspect | iOS (HIG) | Android (Material) |
|---|---|---|
| Touch target | 44x44 pt | 48x48 dp |
| Navigation | Tab bar (bottom) | Bottom nav / Drawer |
| Back navigation | Swipe edge, button | System back |
| Typography | SF Pro | Roboto |
| Icons | SF Symbols | Material Icons |
| Elevation | Subtle | Card elevation |
| Haptics | Taptic Engine | Vibration patterns |
| Error Code | Description | Recovery |
|---|---|---|
MUX-001 | Touch target too small | Increase size |
MUX-002 | Platform violation | Use native pattern |
MUX-003 | Gesture conflict | Redesign gesture |
MUX-004 | Safe area ignored | Add insets |
MUX-005 | Layout overflow | Use flexible layout |
Diagnosis:
├── Check: Navigation patterns
├── Check: Component usage
├── Check: Animation timing
└── Solution: Align with platform
Steps:
1. Audit against HIG/Material
2. Replace custom with native
3. Match platform animations
4. Test with platform users
Diagnosis:
├── Check: Touch target sizes
├── Check: Gesture areas
├── Check: Feedback timing
└── Solution: Optimize touch
Steps:
1. Measure all targets
2. Increase to minimum
3. Add haptic feedback
4. Test with real devices
describe("MobileUXSkill", () => {
describe("platform compliance", () => {
it("should meet iOS touch target requirements", async () => {
const result = await invoke({
task: "ios",
scope: "button component"
});
expect(result.touch_target.width).toBeGreaterThanOrEqual(44);
expect(result.touch_target.height).toBeGreaterThanOrEqual(44);
});
it("should meet Android touch target requirements", async () => {
const result = await invoke({
task: "android",
scope: "button component"
});
expect(result.touch_target.width).toBeGreaterThanOrEqual(48);
expect(result.touch_target.height).toBeGreaterThanOrEqual(48);
});
});
describe("responsive adaptation", () => {
it("should provide breakpoint specifications", async () => {
const result = await invoke({
task: "responsive",
scope: "navigation layout"
});
expect(result.breakpoints.compact).toBeDefined();
expect(result.breakpoints.regular).toBeDefined();
});
});
});
| Metric | Target | Measurement |
|---|---|---|
| Platform compliance | > 95% | HIG/Material audit |
| Touch target compliance | 100% | Size verification |
| Device coverage | > 90% | Matrix testing |
| Performance score | > 90 | Lighthouse/tools |
| Version | Date | Changes |
|---|---|---|
| 1.0.0 | 2025-12-30 | Production-grade upgrade |
npx claudepluginhub pluginagentmarketplace/custom-plugin-ux-design --plugin custom-plugin-ux-designGuides mobile-first, touch-first design for iOS/Android apps with MFRI risk assessment and mandatory checklists to prevent desktop assumptions.
Enforces mobile-first, touch-first, platform-respectful design. Prevents desktop-thinking defaults by assessing feasibility, interaction complexity, and offline needs.
Provides iOS and Android mobile UI guidelines on touch targets, platform rules, navigation, forms, and gestures via knowledge base search. Activates for mobile UI queries.