react-native-setup

React Native Setup Expert (2025)

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "react-native-setup" with this command: npx skills add anton-abyzov/specweave/anton-abyzov-specweave-react-native-setup

React Native Setup Expert (2025)

Expert in React Native 0.83+ and Expo SDK 54+ environment configuration across macOS, Windows, and Linux. Specializes in New Architecture setup, EAS Build configuration, and development environment optimization.

What I Know

Prerequisites & Installation (2025 Requirements)

Node.js & npm

  • Node.js 20.x or later required (Node 18 EOL April 2025)

  • Node.js 22 LTS recommended for best performance

  • Version verification: node --version && npm --version

  • Package managers: npm, yarn, pnpm, bun all supported

  • Corepack for yarn: corepack enable && corepack prepare yarn@stable --activate

Xcode (macOS - iOS Development)

  • Xcode 16.1 or later required (minimum for RN 0.83)

  • Xcode 26 recommended for iOS Liquid Glass support

  • Command line tools: xcode-select --install

  • License acceptance: sudo xcodebuild -license accept

  • iOS 15.1+ deployment target (minimum supported)

  • iOS 18+ for latest features, iOS 26 for Liquid Glass

Android Studio (Android Development)

  • Android Studio Ladybug or later (2024.2.1+)

  • Required SDK components:

  • Android SDK Platform 35 (API level 35)

  • Android SDK Build-Tools 35.0.0

  • Android Emulator

  • Android SDK Platform-Tools

  • NDK 27.1.12297006 (for native modules)

  • CMake 3.22.1+ (for Turbo Modules)

  • compileSdkVersion 35, targetSdkVersion 35, minSdkVersion 24

  • ANDROID_HOME environment variable setup

  • Edge-to-edge display support (Android 15+)

Watchman

  • Installation via Homebrew (macOS): brew install watchman

  • Purpose: File watching for fast refresh with Metro

  • Critical for large codebases

  • Cache clearing: watchman watch-del-all

Environment Configuration

iOS Setup

  • CocoaPods 1.15+ installation: sudo gem install cocoapods

  • Pod install with New Architecture: RCT_NEW_ARCH_ENABLED=1 pod install

  • Xcode project configuration for Fabric

  • Provisioning profiles and certificates

  • iOS Simulator management

  • Device selection: xcrun simctl list devices

  • Liquid Glass testing requires iOS 26 simulator

Android Setup

  • Gradle 8.10+ (bundled with Android Studio Ladybug)

  • Android SDK path configuration

  • Environment variables (ANDROID_HOME, PATH)

  • AVD creation with API 35 images

  • Emulator with edge-to-edge support

  • ADB troubleshooting

  • New Architecture: newArchEnabled=true in gradle.properties

Metro Bundler

  • Port 8081 configuration

  • Cache clearing: npx react-native start --reset-cache

  • Metro config for New Architecture

  • Symlink support for monorepos

  • Custom resolver configuration

EAS Build Setup (Expo)

  • Install EAS CLI: npm install -g eas-cli

  • Login: eas login

  • Configure: eas build:configure

  • Development builds for custom native code

  • EAS Update for OTA updates

Common Setup Issues

"Command not found" Errors

  • PATH configuration for Node, Android SDK, Xcode tools

  • Shell profile updates (.zshrc, .bash_profile)

  • Symlink issues with nvm/fnm

SDK Not Found

  • SDK path verification: echo $ANDROID_HOME

  • Environment variable troubleshooting

  • SDK Manager reinstallation

  • NDK path for native modules

Pod Install Failures

  • CocoaPods version issues (requires 1.15+)

  • Ffi gem compilation errors on Apple Silicon

  • Ruby version compatibility (use system Ruby or rbenv)

  • New Architecture pod failures: clean and rebuild

  • pod deintegrate && pod install strategy

Build Failures

  • Clean build strategies (see Pro Tips)

  • Dependency conflicts with New Architecture

  • Native module compilation errors

  • Xcode derived data clearing

  • Gradle cache corruption

New Architecture Issues

  • Turbo Module not found: check codegen ran

  • Fabric component not rendering: verify native setup

  • Bridge module compatibility: use interop layer

When to Use This Skill

Ask me when you need help with:

  • Initial React Native 0.83+ environment setup

  • Installing and configuring Xcode 16.1+ or Android Studio Ladybug

  • Setting up iOS simulators or Android emulators

  • Troubleshooting "Command not found" errors

  • Resolving SDK path or ANDROID_HOME issues

  • Fixing CocoaPods installation problems

  • Clearing Metro bundler cache

  • Configuring development environment variables

  • Troubleshooting build failures

  • Setting up watchman for file watching

  • Verifying development environment prerequisites

  • EAS Build configuration and troubleshooting

  • New Architecture setup and migration

  • Development build creation for custom native code

  • Hermes V1 experimental setup

Quick Setup Commands

iOS (macOS)

Install Xcode command line tools

xcode-select --install

Accept Xcode license

sudo xcodebuild -license accept

Install CocoaPods (1.15+ required)

sudo gem install cocoapods

Install watchman

brew install watchman

Verify setup

xcodebuild -version # Should be 16.1+ pod --version # Should be 1.15+ watchman version

Android (All Platforms)

Verify Android setup

echo $ANDROID_HOME adb --version emulator -version

Verify SDK version

$ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager --list | grep "platforms;android-35"

List available emulators

emulator -list-avds

List connected devices

adb devices

React Native CLI Project

Create new React Native project (New Architecture enabled by default)

npx @react-native-community/cli init MyProject

Navigate to project

cd MyProject

Install iOS dependencies with New Architecture

cd ios && RCT_NEW_ARCH_ENABLED=1 pod install && cd ..

Start Metro bundler

npm start

Run on iOS (separate terminal)

npm run ios

Run on Android (separate terminal)

npm run android

Expo Project (Recommended)

Create new Expo project

npx create-expo-app@latest MyProject

Navigate to project

cd MyProject

Start development server

npx expo start

Create development build (for custom native code)

npx expo install expo-dev-client eas build --profile development --platform ios eas build --profile development --platform android

Pro Tips

Clean Builds: When in doubt, clean everything

iOS (nuclear option)

cd ios && rm -rf build Pods Podfile.lock && pod install && cd ..

Android

cd android && ./gradlew clean && cd ..

Metro + Watchman

watchman watch-del-all npx react-native start --reset-cache

Expo

npx expo start --clear

Environment Variables: Always verify environment variables after changes

Add to ~/.zshrc or ~/.bash_profile

export ANDROID_HOME=$HOME/Library/Android/sdk export PATH=$PATH:$ANDROID_HOME/emulator export PATH=$PATH:$ANDROID_HOME/platform-tools export PATH=$PATH:$ANDROID_HOME/cmdline-tools/latest/bin

Reload shell

source ~/.zshrc

Simulator Management: List and boot specific devices

iOS

xcrun simctl list devices xcrun simctl boot "iPhone 16 Pro"

Android (API 35 for edge-to-edge)

emulator -list-avds emulator -avd Pixel_8_API_35

Quick Health Check: Verify entire environment

node --version # Should be 20+ npm --version # npm xcodebuild -version # Should be 16.1+ pod --version # Should be 1.15+ adb --version # Android tools watchman version # Watchman eas --version # EAS CLI (Expo)

EAS Build Configuration: Essential eas.json

{ "build": { "development": { "developmentClient": true, "distribution": "internal" }, "preview": { "distribution": "internal" }, "production": {} } }

Hermes V1 (Experimental): Enable next-gen engine

// metro.config.js module.exports = { transformer: { hermesParser: true, }, };

Verify Hermes is running

In app: global.HermesInternal !== undefined

Version Compatibility Matrix (2025)

Component Minimum Recommended Notes

Node.js 20.x 22 LTS Node 18 EOL April 2025

React Native 0.76+ 0.83 New Arch default since 0.76

React 18.3+ 19.2 Activity, useEffectEvent

Expo SDK 52+ 54 Native tabs, Liquid Glass

Xcode 16.1 26 iOS 26 for Liquid Glass

Android SDK 34 35 Edge-to-edge support

CocoaPods 1.14 1.15+ New Arch compatibility

Gradle 8.6 8.10+ K2 compiler support

Integration with SpecWeave

This skill integrates with SpecWeave's increment workflow:

  • Use during /sw:increment planning for environment setup tasks

  • Reference in tasks.md for setup-related acceptance criteria

  • Include in spec.md for mobile-specific prerequisites

  • Document setup issues in increment reports/ folder

  • Use mobile-architect agent for architecture decisions

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

technical-writing

No summary provided by upstream source.

Repository SourceNeeds Review
General

spec-driven-brainstorming

No summary provided by upstream source.

Repository SourceNeeds Review
General

kafka-architecture

No summary provided by upstream source.

Repository SourceNeeds Review
General

docusaurus

No summary provided by upstream source.

Repository SourceNeeds Review