AI Skill
Official
Review
Audit score 70

vercel-react-native-skills

vercel-labs/agent-skills

React Native and Expo best practices for performant mobile apps, animations, and native integrations.

What is vercel-react-native-skills?

Comprehensive guidelines for building optimized React Native and Expo applications. Use when developing React Native components, optimizing list performance, implementing animations, working with native modules, or structuring monorepo projects with native dependencies.

  • Provides critical list performance rules using FlashList, memoization, and callback stabilization
  • Guides GPU-optimized animations with Reanimated using transform and opacity properties
  • Recommends native navigation stacks and tabs over JavaScript navigators
  • Covers UI patterns including Pressable, expo-image, safe areas, and native modals
  • Addresses state management minimization and React Compiler compatibility
  • Offers monorepo structure guidance for native dependencies and version consistency

How to install vercel-react-native-skills

npx skills add https://github.com/vercel-labs/agent-skills --skill vercel-react-native-skills
Claude Code
Cursor
Windsurf
Cline

How to use vercel-react-native-skills

  1. 1.Review the rule categories table to identify relevant guidelines for your task
  2. 2.Read the specific rule files in rules/ directory matching your use case (e.g., list-performance-virtualize.md for list optimization)
  3. 3.Study the incorrect and correct code examples in each rule file
  4. 4.Apply the recommended patterns to your React Native or Expo codebase
  5. 5.Reference AGENTS.md for the complete expanded guide with all rules

Use cases

Good for
  • Optimizing FlatList or ScrollView performance with large datasets using FlashList
  • Implementing smooth animations with Reanimated while maintaining 60fps performance
  • Configuring native modules and custom fonts in Expo projects
  • Structuring monorepo projects that share code across React Native apps
  • Building image galleries and handling safe area layouts in mobile UIs
Who it's for
  • React Native developers building production apps
  • Mobile engineers optimizing list and animation performance
  • Teams managing monorepo projects with native dependencies
  • Expo developers implementing platform-specific features
  • Developers using React Compiler with Reanimated shared values

vercel-react-native-skills FAQ

When should I use FlashList instead of FlatList?

Use FlashList for large lists (50+ items) where performance is critical. FlashList provides better virtualization and recycling than FlatList, significantly improving scroll performance and memory usage.

What properties should I animate in React Native?

Only animate transform and opacity properties for GPU-accelerated performance. Avoid animating layout properties like width, height, or position as they trigger expensive layout recalculations.

Should I use native or JavaScript navigators?

Prefer native stack and native tab navigators over JavaScript-based navigators. Native navigators provide better performance, smoother transitions, and platform-appropriate behavior.

How do I handle native dependencies in a monorepo?

Keep native dependencies in the app package only, not in shared library packages. Use single versions of dependencies across all packages to avoid conflicts and build issues.

What image library should I use in React Native?

Use expo-image for all images instead of Image component. It provides better caching, progressive loading, and memory management.

Full instructions (SKILL.md)

Source of truth, from vercel-labs/agent-skills.


name: vercel-react-native-skills description: React Native and Expo best practices for building performant mobile apps. Use when building React Native components, optimizing list performance, implementing animations, or working with native modules. Triggers on tasks involving React Native, Expo, mobile performance, or native platform APIs. license: MIT metadata: author: vercel version: '1.0.0'

React Native Skills

Comprehensive best practices for React Native and Expo applications. Contains rules across multiple categories covering performance, animations, UI patterns, and platform-specific optimizations.

When to Apply

Reference these guidelines when:

  • Building React Native or Expo apps
  • Optimizing list and scroll performance
  • Implementing animations with Reanimated
  • Working with images and media
  • Configuring native modules or fonts
  • Structuring monorepo projects with native dependencies

Rule Categories by Priority

PriorityCategoryImpactPrefix
1List PerformanceCRITICALlist-performance-
2AnimationHIGHanimation-
3NavigationHIGHnavigation-
4UI PatternsHIGHui-
5State ManagementMEDIUMreact-state-
6RenderingMEDIUMrendering-
7MonorepoMEDIUMmonorepo-
8ConfigurationLOWfonts-, imports-

Quick Reference

1. List Performance (CRITICAL)

  • list-performance-virtualize - Use FlashList for large lists
  • list-performance-item-memo - Memoize list item components
  • list-performance-callbacks - Stabilize callback references
  • list-performance-inline-objects - Avoid inline style objects
  • list-performance-function-references - Extract functions outside render
  • list-performance-images - Optimize images in lists
  • list-performance-item-expensive - Move expensive work outside items
  • list-performance-item-types - Use item types for heterogeneous lists

2. Animation (HIGH)

  • animation-gpu-properties - Animate only transform and opacity
  • animation-derived-value - Use useDerivedValue for computed animations
  • animation-gesture-detector-press - Use Gesture.Tap instead of Pressable

3. Navigation (HIGH)

  • navigation-native-navigators - Use native stack and native tabs over JS navigators

4. UI Patterns (HIGH)

  • ui-expo-image - Use expo-image for all images
  • ui-image-gallery - Use Galeria for image lightboxes
  • ui-pressable - Use Pressable over TouchableOpacity
  • ui-safe-area-scroll - Handle safe areas in ScrollViews
  • ui-scrollview-content-inset - Use contentInset for headers
  • ui-menus - Use native context menus
  • ui-native-modals - Use native modals when possible
  • ui-measure-views - Use onLayout, not measure()
  • ui-styling - Use StyleSheet.create or Nativewind

5. State Management (MEDIUM)

  • react-state-minimize - Minimize state subscriptions
  • react-state-dispatcher - Use dispatcher pattern for callbacks
  • react-state-fallback - Show fallback on first render
  • react-compiler-destructure-functions - Destructure for React Compiler
  • react-compiler-reanimated-shared-values - Handle shared values with compiler

6. Rendering (MEDIUM)

  • rendering-text-in-text-component - Wrap text in Text components
  • rendering-no-falsy-and - Avoid falsy && for conditional rendering

7. Monorepo (MEDIUM)

  • monorepo-native-deps-in-app - Keep native dependencies in app package
  • monorepo-single-dependency-versions - Use single versions across packages

8. Configuration (LOW)

  • fonts-config-plugin - Use config plugins for custom fonts
  • imports-design-system-folder - Organize design system imports
  • js-hoist-intl - Hoist Intl object creation

How to Use

Read individual rule files for detailed explanations and code examples:

rules/list-performance-virtualize.md
rules/animation-gpu-properties.md

Each rule file contains:

  • Brief explanation of why it matters
  • Incorrect code example with explanation
  • Correct code example with explanation
  • Additional context and references

Full Compiled Document

For the complete guide with all rules expanded: AGENTS.md

Related skills

More from vercel-labs/agent-skills and the wider catalog.

VE

vercel-react-best-practices

Official
vercel-labs/agent-skills

React and Next.js performance optimization guidelines from Vercel Engineering. This skill should be used when writing, reviewing, or refactoring React/Next.js code to ensure optimal performance patterns. Triggers on tasks involving React components, Next.js pages, data fetching, bundle optimization, or performance improvements.

514k installsAudited
WE

web-design-guidelines

Official
vercel-labs/agent-skills

Review UI code for Web Interface Guidelines compliance. Use when asked to "review my UI", "check accessibility", "audit design", "review UX", or "check my site against best practices".

427k installs
VE

vercel-composition-patterns

Official
vercel-labs/agent-skills

Agent skill from vercel-labs/agent-skills.

230k installs
DE

deploy-to-vercel

Official
vercel-labs/agent-skills

Deploy applications and websites to Vercel. Use when the user requests deployment actions like "deploy my app", "deploy and give me the link", "push this live", or "create a preview deployment".

82k installs
VE

vercel-react-view-transitions

Official
vercel-labs/agent-skills

Guide for implementing smooth, native-feeling animations using React's View Transition API (`<ViewTransition>` component, `addTransitionType`, and CSS view transition pseudo-elements). Use this skill whenever the user wants to add page transitions, animate route changes, create shared element animations, animate enter/exit of components, animate list reorder, implement directional (forward/back) navigation animations, or integrate view transitions in Next.js. Also use when the user mentions view transitions, `startViewTransition`, `ViewTransition`, transition types, or asks about animating between UI states in React without third-party animation libraries.

69k installsAudited
VE

vercel-cli-with-tokens

Official
vercel-labs/agent-skills

Deploy and manage projects on Vercel using token-based authentication. Use when working with Vercel CLI using access tokens rather than interactive login — e.g. "deploy to vercel", "set up vercel", "add environment variables to vercel".

60k installs