vercel-react-native-skills

Applies React Native and Expo performance rules to mobile app code.

Updated Aug 3, 2026
One-click install
npx skills add https://github.com/Mark-Atef/Nebu --skill vercel-react-native-skills-mark-atef
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: vercel-react-native-skills
Source: https://github.com/Mark-Atef/Nebu/tree/main/.agents/skills/vercel-react-native-skills
Command: npx skills add https://github.com/Mark-Atef/Nebu --skill vercel-react-native-skills-mark-atef

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? React Native apps frequently suffer from scroll jank, unnecessary re-renders, runtime crashes, and slow animations caused by common anti-patterns. This Skill provides a prioritized rule set that guides AI agents and developers to write performant, crash-free React Native and Expo code from the start. ## Core Features & Use Cases - Prioritized Rule Library: 35+ rules across 13 categories ranked by impact, from CRITICAL rendering rules (avoiding falsy && crashes) to LOW-priority font loading optimizations. - Incorrect vs. Correct Examples: Every rule includes side-by-side code comparisons showing the anti-pattern and the recommended implementation with explanations. - List and Animation Optimization: Detailed guidance on virtualized lists (LegendList, FlashList), Reanimated shared values, GestureDetector press states, and memoization strategies. - Use Case: When building a feed screen with FlashList, consult the list performance rules to pass primitive props to memoized items, hoist callbacks, and use compressed images—preventing scroll jank before it ships. ## Quick Start Review my React Native list component and apply the relevant performance rules from this skill to eliminate re-render issues.

Frequently Asked Questions about vercel-react-native-skills

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

FAQPage Schema
How do I optimize FlatList or FlashList performance in React Native?

Pass primitive props to memoized list items, hoist callbacks to the list root, avoid inline objects in renderItem, and keep items lightweight without queries or context access. Use getItemType for heterogeneous lists to enable efficient recycling pools.

Why does my React Native app crash with conditional rendering?

Using {value && <Component />} crashes when value is an empty string or 0, because React Native tries to render the falsy value as text outside a Text component. Use ternaries, explicit boolean coercion, or early returns instead.

Should I use ScrollView or a virtualized list for short lists?

Use a virtualizer like LegendList or FlashList even for short lists. ScrollView mounts all children upfront, while virtualizers render only visible items, reducing memory usage and mount time on any scrollable screen.

Does React Compiler change how I use Reanimated shared values?

Yes. With React Compiler enabled, use .get() and .set() methods instead of reading or writing .value directly on shared values. The compiler cannot track property access, so explicit methods ensure correct behavior.

LegendList vs FlashList for React Native lists?

Both are recommended virtualizers in these guidelines. LegendList supports getItemType for heterogeneous recycling pools and estimatedItemSize, while FlashList from Shopify is a proven alternative. Either is preferred over ScrollView with mapped children.

How do I handle animations without causing layout thrashing?

Animate only transform and opacity properties, which run on the GPU. Animating width, height, or margin triggers layout recalculation every frame. For press states, use GestureDetector with Gesture.Tap so callbacks run as UI thread worklets.