Optimizes Expo React Native apps using 54 rules across launch time, bundle size, lists, images, navigation, animations, re-renders, and memory. Apply when writing, reviewing, or refactoring for mobile performance.
npx claudepluginhub joshuarweaver/cascade-code-general-misc-1 --plugin pproenca-dot-skills-1This skill uses the workspace's default tool permissions.
Comprehensive performance optimization guide for Expo React Native applications. Contains 54 rules across 9 categories, prioritized by impact to guide automated refactoring and code generation.
Applies Acme Corporation brand guidelines including colors, fonts, layouts, and messaging to generated PowerPoint, Excel, and PDF documents.
Builds DCF models with sensitivity analysis, Monte Carlo simulations, and scenario planning for investment valuation and risk assessment.
Calculates profitability (ROE, margins), liquidity (current ratio), leverage, efficiency, and valuation (P/E, EV/EBITDA) ratios from financial statements in CSV, JSON, text, or Excel for investment analysis.
Comprehensive performance optimization guide for Expo React Native applications. Contains 54 rules across 9 categories, prioritized by impact to guide automated refactoring and code generation.
Reference these guidelines when:
| Priority | Category | Impact | Prefix |
|---|---|---|---|
| 1 | Launch Time Optimization | CRITICAL | launch- |
| 2 | Bundle Size Optimization | CRITICAL | bundle- |
| 3 | List Virtualization | HIGH | list- |
| 4 | Image Optimization | HIGH | image- |
| 5 | Data Fetching Patterns | HIGH | data- |
| 6 | Navigation Performance | MEDIUM-HIGH | nav- |
| 7 | Re-render Prevention | MEDIUM | rerender- |
| 8 | Animation Performance | MEDIUM | anim- |
| 9 | Memory Management | LOW-MEDIUM | mem- |
launch-splash-screen-control - Control splash screen visibility during asset loadinglaunch-preload-critical-assets - Preload fonts and images during splashlaunch-hermes-engine - Use Hermes engine for faster startuplaunch-defer-non-critical - Defer non-critical initializationlaunch-new-architecture - Enable New Architecture for synchronous native communicationlaunch-minimize-root-imports - Minimize imports in root App componentbundle-avoid-barrel-files - Avoid barrel file importsbundle-analyze-size - Analyze bundle size before releasebundle-remove-unused-dependencies - Remove unused dependenciesbundle-split-by-architecture - Generate architecture-specific APKsbundle-enable-proguard - Enable ProGuard for Android release buildsbundle-optimize-fonts - Subset custom fonts to used charactersbundle-use-lightweight-alternatives - Use lightweight library alternativeslist-use-flashlist - Use FlashList instead of FlatListlist-provide-estimated-size - Provide accurate estimatedItemSizelist-avoid-inline-functions - Avoid inline functions in renderItemlist-provide-getitemlayout - Provide getItemLayout for fixed-height itemslist-avoid-key-prop - Avoid key prop inside FlashList itemslist-batch-rendering - Configure list batch renderinglist-memoize-item-components - Memoize list item componentsimage-use-expo-image - Use expo-image instead of React Native Imageimage-resize-to-display-size - Resize images to display sizeimage-use-webp-format - Use WebP format for smaller file sizesimage-use-placeholders - Use BlurHash or ThumbHash placeholdersimage-preload-critical - Preload critical above-the-fold imagesimage-lazy-load-offscreen - Lazy load off-screen imagesdata-parallel-fetching - Fetch independent data in paralleldata-request-deduplication - Deduplicate concurrent requestsdata-abort-requests - Abort requests on component unmountdata-pagination - Implement efficient pagination strategiesdata-cache-strategies - Use appropriate caching strategiesdata-optimistic-updates - Apply optimistic updates for responsivenessnav-use-native-stack - Use native stack navigatornav-unmount-inactive-screens - Unmount inactive tab screensnav-prefetch-screen-data - Prefetch data before navigationnav-optimize-screen-options - Optimize screen optionsnav-avoid-deep-nesting - Avoid deeply nested navigatorsrerender-use-memo-components - Memoize expensive components with React.memorerender-use-callback - Stabilize callbacks with useCallbackrerender-use-memo-values - Memoize expensive computations with useMemorerender-avoid-context-overuse - Avoid overusing Context for frequent updatesrerender-split-component-state - Split components to isolate updating statererender-use-react-compiler - Enable React Compiler for automatic memoizationrerender-avoid-anonymous-components - Avoid anonymous components in JSXanim-use-reanimated - Use Reanimated for UI thread animationsanim-use-native-driver - Enable useNativeDriver for Animated APIanim-avoid-layout-animation - Prefer transform over layout animationsanim-gesture-handler-integration - Use Gesture Handler with Reanimatedanim-interaction-manager - Defer heavy work during animationsmem-cleanup-useeffect - Clean up subscriptions and timersmem-abort-fetch-requests - Abort fetch requests on unmountmem-avoid-closure-leaks - Avoid closure-based memory leaksmem-release-heavy-resources - Release heavy resources when not neededmem-profile-with-tools - Profile memory usage with development toolsRead individual reference files for detailed explanations and code examples:
For the complete guide with all rules expanded: AGENTS.md