Mobile design
Skill ComeOnOliver/skillshub/skills/aiskillstore/marketplace/sickn33/mobile-design
π§ The right skill, one API call. AI agent skills registry with token-efficient skill resolution. 5,000+ skills from 500+ top repos.
npx -y skills add ComeOnOliver/skillshub --skill mobile-designAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
What its author says it does
Copied from the file, not written here
Mobile-first design and engineering doctrine for iOS and Android apps. Covers touch interaction, performance, platform conventions, offline behavior, and mobile-specific decision-making. Teaches principles and constraints, not fixed layouts. Use for React Native, Flutter, or native mobile apps.
SKILL.md
9.1 KB, ~1.9k tokens by cl100k_base, as published. Nobody here has run it
Mobile Design System
(Mobile-First Β· Touch-First Β· Platform-Respectful)
Philosophy: Touch-first. Battery-conscious. Platform-respectful. Offline-capable. Core Law: Mobile is NOT a small desktop. Operating Rule: Think constraints first, aesthetics second.
This skill exists to prevent desktop-thinking, AI-defaults, and unsafe assumptions when designing or building mobile applications.
1. Mobile Feasibility & Risk Index (MFRI)
Before designing or implementing any mobile feature or screen, assess feasibility.
MFRI Dimensions (1β5)
| Dimension | Question |
|---|---|
| Platform Clarity | Is the target platform (iOS / Android / both) explicitly defined? |
| Interaction Complexity | How complex are gestures, flows, or navigation? |
| Performance Risk | Does this involve lists, animations, heavy state, or media? |
| Offline Dependence | Does the feature break or degrade without network? |
| Accessibility Risk | Does this impact motor, visual, or cognitive accessibility? |
Score Formula
MFRI = (Platform Clarity + Accessibility Readiness)
β (Interaction Complexity + Performance Risk + Offline Dependence)
Range: -10 β +10
Interpretation
| MFRI | Meaning | Required Action |
|---|---|---|
| 6β10 | Safe | Proceed normally |
| 3β5 | Moderate | Add performance + UX validation |
| 0β2 | Risky | Simplify interactions or architecture |
| < 0 | Dangerous | Redesign before implementation |
2. Mandatory Thinking Before Any Work
β STOP: Ask Before Assuming (Required)
If any of the following are not explicitly stated, you MUST ask before proceeding:
| Aspect | Question | Why |
|---|---|---|
| Platform | iOS, Android, or both? | Affects navigation, gestures, typography |
| Framework | React Native, Flutter, or native? | Determines performance and patterns |
| Navigation | Tabs, stack, drawer? | Core UX architecture |
| Offline | Must it work offline? | Data & sync strategy |
| Devices | Phone only or tablet too? | Layout & density rules |
| Audience | Consumer, enterprise, accessibility needs? | Touch & readability |
π« Never default to your favorite stack or pattern.
3. Mandatory Reference Reading (Enforced)
Universal (Always Read First)
| File | Purpose | Status |
|---|---|---|
| mobile-design-thinking.md | Anti-memorization, context-forcing | π΄ REQUIRED FIRST |
| touch-psychology.md | Fittsβ Law, thumb zones, gestures | π΄ REQUIRED |
| mobile-performance.md | 60fps, memory, battery | π΄ REQUIRED |
| mobile-backend.md | Offline sync, push, APIs | π΄ REQUIRED |
| mobile-testing.md | Device & E2E testing | π΄ REQUIRED |
| mobile-debugging.md | Native vs JS debugging | π΄ REQUIRED |
Platform-Specific (Conditional)
| Platform | File |
|---|---|
| iOS | platform-ios.md |
| Android | platform-android.md |
| Cross-platform | BOTH above |
β If you havenβt read the platform file, you are not allowed to design UI.
4. AI Mobile Anti-Patterns (Hard Bans)
π« Performance Sins (Non-Negotiable)
| β Never | Why | β Always |
|---|---|---|
| ScrollView for long lists | Memory explosion | FlatList / FlashList / ListView.builder |
| Inline renderItem | Re-renders all rows | useCallback + memo |
| Index as key | Reorder bugs | Stable ID |
| JS-thread animations | Jank | Native driver / GPU |
| console.log in prod | JS thread block | Strip logs |
| No memoization | Battery + perf drain | React.memo / const widgets |
π« Touch & UX Sins
| β Never | Why | β Always |
|---|---|---|
| Touch <44β48px | Miss taps | Min touch target |
| Gesture-only action | Excludes users | Button fallback |
| No loading state | Feels broken | Explicit feedback |
| No error recovery | Dead end | Retry + message |
| Ignore platform norms | Muscle memory broken | iOS β Android |
π« Security Sins
| β Never | Why | β Always |
|---|---|---|
| Tokens in AsyncStorage | Easily stolen | SecureStore / Keychain |
| Hardcoded secrets | Reverse engineered | Env + secure storage |
| No SSL pinning | MITM risk | Cert pinning |
| Log sensitive data | PII leakage | Never log secrets |
5. Platform Unification vs Divergence Matrix
UNIFY DIVERGE
ββββββββββββββββββββββββββ βββββββββββββββββββββββββ
Business logic Navigation behavior
Data models Gestures
API contracts Icons
Validation Typography
Error semantics Pickers / dialogs
Platform Defaults
| Element | iOS | Android |
|---|---|---|
| Font | SF Pro | Roboto |
| Min touch | 44pt | 48dp |
| Back | Edge swipe | System back |
| Sheets | Bottom sheet | Dialog / sheet |
| Icons | SF Symbols | Material Icons |
6. Mobile UX Psychology (Non-Optional)
Fittsβ Law (Touch Reality)
- Finger β cursor
- Accuracy is low
- Reach matters more than precision
Rules:
- Primary CTAs live in thumb zone
- Destructive actions pushed away
- No hover assumptions
7. Performance Doctrine
React Native (Required Pattern)
const Row = React.memo(({ item }) => (
<View><Text>{item.title}</Text></View>
));
const renderItem = useCallback(
({ item }) => <Row item={item} />,
[]
);
<FlatList
data={items}
renderItem={renderItem}
keyExtractor={(i) => i.id}
getItemLayout={(_, i) => ({
length: ITEM_HEIGHT,
offset: ITEM_HEIGHT * i,
index: i,
})}
/>
Flutter (Required Pattern)
class Item extends StatelessWidget {
const Item({super.key});
@override
Widget build(BuildContext context) {
return const Text('Static');
}
}
consteverywhere possible- Targeted rebuilds only
8. Mandatory Mobile Checkpoint
Before writing any code, you must complete this:
π§ MOBILE CHECKPOINT
Platform: ___________
Framework: ___________
Files Read: ___________
3 Principles I Will Apply:
1.
2.
3.
Anti-Patterns I Will Avoid:
1.
2.
β Cannot complete β go back and read.
9. Framework Decision Tree (Canonical)
Need OTA + web team β React Native + Expo
High-perf UI β Flutter
iOS only β SwiftUI
Android only β Compose
No debate without justification.
10. Release Readiness Checklist
Before Shipping
- Touch targets β₯ 44β48px
- Offline handled
- Secure storage used
- Lists optimized
- Logs stripped
- Tested on low-end devices
- Accessibility labels present
- MFRI β₯ 3
11. Related Skills
- frontend-design β Visual systems & components
- frontend-dev-guidelines β RN/TS architecture
- backend-dev-guidelines β Mobile-safe APIs
- error-tracking β Crash & performance telemetry
Final Law: Mobile users are distracted, interrupted, and impatientβoften using one hand on a bad network with low battery. Design for that reality, or your app will fail quietly.
What ships with it
272.7 KB alongside SKILL.md, 1 of them executable
GitHub clipped this repositoryβs file list, so this is at least 14 files and may be more.
scripts/
- mobile_audit.pyruns35.1 KB
- decision-trees.md15.9 KB
- mobile-backend.md14.3 KB
- mobile-color-system.md10.0 KB
- mobile-debugging.md4.2 KB
- mobile-design-thinking.md16.8 KB
- mobile-navigation.md11.6 KB
- mobile-performance.md18.9 KB
- mobile-testing.md10.8 KB
- mobile-typography.md10.5 KB
- platform-android.md19.1 KB
- platform-ios.md16.7 KB
- skill-report.json72.4 KB
- touch-psychology.md16.5 KB