What problem does it solve? Adding React Native to an existing native iOS or Android app is architecturally ambiguous: teams must choose between shipping a prebuilt AAR/XCFramework or embedding React Native directly into Gradle and CocoaPods builds, then wire up Metro, autolinking, and module registration correctly. This Skill guides that decision and provides step-by-step integration instructions for both approaches. ## Core Features & Use Cases - Approach selection: Decision rules and a comparison matrix for choosing between the isolated approach (prebuilt AAR/XCFramework consumed as a library dependency) and the integrated approach (React Native sources added to the existing Gradle/CocoaPods build). - Isolated workflow: Build commands via expo-brownfield build:android and build:ios, Maven publishing configuration, Swift Package output, and native consumption via BrownfieldActivity, ReactNativeViewController, and ReactNativeView. - Integrated workflow: Full Gradle (settings.gradle, app/build.gradle, MainApplication.kt, ReactActivity) and CocoaPods/Xcode (Podfile, AppDelegate.swift, build phases) configuration for embedding React Native in an existing app. - Troubleshooting: Covers Metro connection failures, XCFramework signing, monorepo autolinking, module name mismatches, and SDK upgrade issues. - Use Case: An iOS team using Tuist wants to add a React Native onboarding flow without installing Node. The Skill directs them to the isolated approach: build an XCFramework with npx expo-brownfield build:ios --package, add it as a local Swift Package, and call ReactNativeHostManager.shared.initialize() in the AppDelegate. ## Quick Start Ask the assistant to help you add React Native to your existing native iOS or Android app and describe whether your native team can use Node and React Native tooling.