Provides an incremental adoption strategy to migrate native iOS or Android apps to React Native or Expo using @callstack/react-native-brownfield for initial setup. Use when planning migration steps, packaging XCFramework/AAR artifacts, and integrating them into host apps.
How this skill is triggered — by the user, by Claude, or both
Slash command
/upgrading-react-native:react-native-brownfield-migrationThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Prescriptive workflow for incremental adoption of React Native in existing native apps using `@callstack/react-native-brownfield`, from initial setup through phased host integration.
agents/openai.yamlreferences/bare-android-aar-generation.mdreferences/bare-android-native-integration.mdreferences/bare-ios-native-integration.mdreferences/bare-ios-xcframework-generation.mdreferences/bare-quick-start.mdreferences/expo-android-integration.mdreferences/expo-create-app.mdreferences/expo-ios-integration.mdreferences/expo-quick-start.mdreferences/quick-start.mdPrescriptive workflow for incremental adoption of React Native in existing native apps using @callstack/react-native-brownfield, from initial setup through phased host integration.
Use one track per task unless the user explicitly asks for migration or comparison.
Use this strategy for brownfield migration planning and execution:
@callstack/react-native-brownfield.XCFramework/AAR) from the RN source app.Apply these rules across all reference files:
<framework_target_name>, <android_module_name>, <registered_module_name>) and resolve from project files.agent-device to open the host app, navigate to the RN surface, capture snapshots/screenshots, and collect device evidence. If it is missing and verification needs it, install it through the environment's approved/trusted path or ask the user to install or enable it.Before selecting any reference file, classify the project:
package.json and app.json:
expo is present or Expo plugin workflow is requested.Reference this package when:
@callstack/react-native-brownfield| File | Description |
|---|---|
| quick-start.md | Shared preflight and mandatory path-selection gate |
| expo-create-app.md | Scaffold a new Expo app before Expo brownfield setup |
| expo-quick-start.md | Expo plugin setup and packaging readiness |
| expo-ios-integration.md | Expo iOS packaging and host startup integration |
| expo-android-integration.md | Expo Android packaging, publish, and host integration |
| bare-quick-start.md | Bare React Native baseline setup |
| bare-ios-xcframework-generation.md | Bare iOS XCFramework generation |
| bare-android-aar-generation.md | Bare Android AAR generation and publish |
| bare-ios-native-integration.md | Bare iOS host integration |
| bare-android-native-integration.md | Bare Android host integration |
| Problem | Start With |
|---|---|
| Need path decision first | quick-start.md |
| Need to create a new Expo app for brownfield | expo-create-app.md |
| Need Expo brownfield setup and plugin wiring | expo-quick-start.md |
| Need Expo iOS brownfield integration | expo-ios-integration.md |
| Need Expo Android brownfield integration | expo-android-integration.md |
| Need bare RN baseline setup | bare-quick-start.md |
| Need bare RN iOS XCFramework generation | bare-ios-xcframework-generation.md |
| Need bare RN Android AAR generation/publish | bare-android-aar-generation.md |
| Need bare RN iOS host integration | bare-ios-native-integration.md |
| Need bare RN Android host integration | bare-android-native-integration.md |
npx claudepluginhub callstackincubator/agent-skills --plugin react-native-best-practicesGuides incremental migration of native iOS/Android apps to React Native or Expo using @callstack/react-native-brownfield, covering setup, XCFramework/AAR packaging, and host integration.
Integrates Expo and React Native into existing native iOS or Android apps via isolated (AAR/XCFramework) or integrated (Gradle/CocoaPods) approaches.
Upgrades React Native apps to newer versions using rn-diff-purge diffs, updates package.json, migrates iOS/Android config, resolves CocoaPods and Gradle changes, and handles breaking API updates.