mobile-design

Audits and guides React Native and Flutter mobile UI code for performance, touch, and platform compliance.

Updated Apr 13, 2026
One-click install
npx skills add https://github.com/JenilRevaliya/ARGUS --skill mobile-design-jenilrevaliya
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: mobile-design
Source: https://github.com/JenilRevaliya/ARGUS/tree/main/.agent/skills/mobile-design
Command: npx skills add https://github.com/JenilRevaliya/ARGUS --skill mobile-design-jenilrevaliya

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) components.

What problem does it solve? Mobile apps frequently ship with janky animations, undersized touch targets, memory-leaking lists, and platform-inconsistent styling because developers miss framework-specific best practices. This Skill provides a dense reference of mobile design rules plus an automated audit script that scans React Native and Flutter code for 50+ common violations. ## Core Features & Use Cases - Automated Mobile UX Audit: The mobile_audit.py script scans source files for critical issues like ScrollView with .map(), missing keyExtractor, insecure token storage in AsyncStorage, and missing useNativeDriver. - Design Rule Reference: Covers Reanimated 3 worklets, FlashList usage, haptics, safe areas, thumb zones, OLED-safe colors, and iOS/Android platform-specific patterns. - Use Case: Before releasing a React Native app, run the audit script over the src directory to catch performance-critical issues like index-based keys, console.log statements, and animations on layout properties that would cause 120Hz jank. ## Quick Start Audit my React Native project for mobile performance and UX issues using the mobile design guidelines.

Frequently Asked Questions about mobile-design

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I fix slow FlatList performance in React Native?▼

Replace FlatList with FlashList from Shopify, which is 5-10x faster, and always provide the required estimatedItemSize prop. Add React.memo to list items, wrap renderItem in useCallback, and use a stable keyExtractor with unique IDs instead of array indices.

What is the correct way to animate in React Native at 120Hz?▼

Use Reanimated 3 worklets with useSharedValue and useAnimatedStyle so animations run on the UI thread, not the JS thread. Only animate transform and opacity properties, and prefer withSpring over withTiming for interactive elements.

Does the mobile audit script support Flutter projects?▼

Yes, the script detects Flutter code via package:flutter imports and Widget.build patterns alongside React Native detection. It applies the same touch target, spacing, and UX checks to both frameworks.

Why is storing auth tokens in AsyncStorage flagged as insecure?▼

AsyncStorage stores data unencrypted on the device, making tokens readable by other apps or attackers with device access. Use SecureStore on iOS or EncryptedSharedPreferences on Android for credentials, tokens, and sensitive data.

What minimum touch target size should mobile buttons have?▼

Touch targets must be at least 44pt on iOS, 48dp on Android, and 44px per WCAG guidelines. The visual icon can be smaller, but padding must expand the hitbox to the minimum, with at least 8px spacing between adjacent targets.