Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
callstackincubator avatar

React Native Brownfield Migration

  • 3.2k installs
  • 1.6k repo stars
  • Updated July 25, 2026
  • callstackincubator/agent-skills

react-native-brownfield-migration is a Callstack agent skill that plans incremental React Native adoption in native apps using @callstack/react-native-brownfield packaging and host integration.

About

react-native-brownfield-migration is a Callstack agent skill for incremental adoption of React Native inside existing native iOS or Android applications using @callstack/react-native-brownfield. It prescribes a migration strategy: assess the app, choose Expo or bare React Native once, perform initial brownfield setup, package XCFramework or AAR artifacts from the RN source app, integrate one surface into the host, validate startup, then repeat per feature. A mandatory path-selection gate routes greenfield Expo creation, Expo plugin workflows, or bare native CLI projects before any platform steps run. Reference files cover Expo and bare quick starts, iOS XCFramework generation, Android AAR publish, and host integration for each track with placeholders such as framework target and module names resolved from project files. Global guardrails forbid mixing Expo and bare steps, require validating packaging commands before host wiring, and prefer facade APIs over direct React Native calls in host apps. Developers reach for this skill when planning brownfield RN rollout, generating distributable RN binaries, or integrating RN screens into legacy native codebases.

  • Five-step migration strategy from assess and setup through package, integrate, validate, and repeat per feature.
  • Mandatory path-selection gate chooses Expo or bare React Native before any platform instructions run.
  • Covers XCFramework generation for iOS and AAR packaging and publish for Android brownfield artifacts.
  • Reference map links Expo and bare quick starts plus per-platform integration guides.
  • Guardrails forbid mixing tracks and require facade APIs instead of direct RN calls in host apps.

React Native Brownfield Migration by the numbers

  • 3,151 all-time installs (skills.sh)
  • +95 installs in the week ending Jul 28, 2026 (Skillselion tracking)
  • Ranked #43 of 1,048 Mobile Development skills by installs in the Skillselion catalog
  • Security screen: LOW risk (skills.sh audit)
  • Data as of Jul 28, 2026 (Skillselion catalog sync)
At a glance

react-native-brownfield-migration capabilities & compatibility

Capabilities
expo versus bare path selection · xcframework and aar packaging guidance · host app integration workflows · incremental per feature rollout planning
Use cases
frontend · api development
From the docs

What react-native-brownfield-migration says it does

incremental adoption strategy to migrate native iOS or Android apps to React Native
SKILL.md
Select one path first (Expo or bare) and do not mix steps
SKILL.md
npx skills add https://github.com/callstackincubator/agent-skills --skill react-native-brownfield-migration

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs3.2k
repo stars1.6k
Security audit3 / 3 scanners passed
Last updatedJuly 25, 2026
Repositorycallstackincubator/agent-skills

How do I add React Native screens to an existing native iOS or Android app without a full rewrite or mixing incompatible Expo and bare setup steps?

Plan incremental React Native or Expo adoption in native iOS and Android apps using @callstack/react-native-brownfield packaging and host integration.

Who is it for?

Mobile developers migrating native apps to React Native incrementally with Callstack brownfield packaging and host integration workflows.

Skip if: Skip for greenfield React Native-only apps that do not embed RN into an existing native host codebase.

When should I use this skill?

User plans brownfield React Native migration, packages XCFramework or AAR artifacts, or integrates RN into native iOS or Android hosts.

What you get

Packaged XCFramework or AAR artifacts integrated into the host app with validated startup and a repeatable per-feature rollout plan.

  • Migration plan per track
  • Packaged RN binary artifacts
  • Host integration checklist

By the numbers

  • Targets iOS XCFramework and Android AAR artifact packaging
  • Built on @callstack/react-native-brownfield by Callstack

Files

SKILL.mdMarkdownGitHub ↗

Migrating to React Native

Overview

Prescriptive workflow for incremental adoption of React Native in existing native apps using @callstack/react-native-brownfield, from initial setup through phased host integration.

  • Expo track
  • Bare React Native track

Use one track per task unless the user explicitly asks for migration or comparison.

Migration Strategy

Use this strategy for brownfield migration planning and execution:

1. Assess app state and select Expo or bare path. 2. Perform initial setup with @callstack/react-native-brownfield. 3. Package RN artifacts (XCFramework/AAR) from the RN source app. 4. Integrate one RN surface into the host app and validate startup/runtime. 5. Repeat integration by feature/screen for incremental rollout.

Agent Guardrails (Global)

Apply these rules across all reference files:

1. Select one path first (Expo or bare) and do not mix steps. 2. Use placeholders from the docs (<framework_target_name>, <android_module_name>, <registered_module_name>) and resolve from project files. 3. Validate each packaging command before moving to host integration. 4. Prefer official docs for long platform snippets and CLI option details. 5. Keep host apps isolated from direct React Native APIs when possible (facade approach).

Canonical Docs

Path Selection Gate (Must Run First)

Before selecting any reference file, classify the project:

1. If no React Native app exists yet, use Expo creation path:

  • [expo-create-app.md][expo-create-app] -> [expo-quick-start.md][expo-quick-start]

2. If React Native app exists, inspect package.json and app.json:

  • Expo if expo is present or Expo plugin workflow is requested.
  • Bare RN if native folders and direct RN CLI workflow are used without Expo path requirements.

3. If still unclear, ask one disambiguation question. 4. Continue with exactly one path.

When to Apply

Reference this package when:

  • Planning incremental migration from native-only apps to React Native or Expo
  • Creating brownfield integration flows for Expo or bare React Native projects
  • Performing initial setup with @callstack/react-native-brownfield
  • Generating iOS XCFramework artifacts from a React Native app
  • Generating and publishing Android AAR artifacts from a React Native app
  • Integrating generated artifacts into host iOS/Android apps

Quick Reference

FileDescription
[quick-start.md][quick-start]Shared preflight and mandatory path-selection gate
[expo-create-app.md][expo-create-app]Scaffold a new Expo app before Expo brownfield setup
[expo-quick-start.md][expo-quick-start]Expo plugin setup and packaging readiness
[expo-ios-integration.md][expo-ios-integration]Expo iOS packaging and host startup integration
[expo-android-integration.md][expo-android-integration]Expo Android packaging, publish, and host integration
[bare-quick-start.md][bare-quick-start]Bare React Native baseline setup
[bare-ios-xcframework-generation.md][bare-ios-xcframework-generation]Bare iOS XCFramework generation
[bare-android-aar-generation.md][bare-android-aar-generation]Bare Android AAR generation and publish
[bare-ios-native-integration.md][bare-ios-native-integration]Bare iOS host integration
[bare-android-native-integration.md][bare-android-native-integration]Bare Android host integration

Problem -> Skill Mapping

ProblemStart With
Need path decision first[quick-start.md][quick-start]
Need to create a new Expo app for brownfield[expo-create-app.md][expo-create-app]
Need Expo brownfield setup and plugin wiring[expo-quick-start.md][expo-quick-start]
Need Expo iOS brownfield integration[expo-ios-integration.md][expo-ios-integration]
Need Expo Android brownfield integration[expo-android-integration.md][expo-android-integration]
Need bare RN baseline setup[bare-quick-start.md][bare-quick-start]
Need bare RN iOS XCFramework generation[bare-ios-xcframework-generation.md][bare-ios-xcframework-generation]
Need bare RN Android AAR generation/publish[bare-android-aar-generation.md][bare-android-aar-generation]
Need bare RN iOS host integration[bare-ios-native-integration.md][bare-ios-native-integration]
Need bare RN Android host integration[bare-android-native-integration.md][bare-android-native-integration]

[quick-start]: references/quick-start.md [expo-create-app]: references/expo-create-app.md [expo-quick-start]: references/expo-quick-start.md [expo-ios-integration]: references/expo-ios-integration.md [expo-android-integration]: references/expo-android-integration.md [bare-quick-start]: references/bare-quick-start.md [bare-ios-xcframework-generation]: references/bare-ios-xcframework-generation.md [bare-android-aar-generation]: references/bare-android-aar-generation.md [bare-ios-native-integration]: references/bare-ios-native-integration.md [bare-android-native-integration]: references/bare-android-native-integration.md

Related skills

How it compares

Choose react-native-brownfield-migration over greenfield RN scaffolding when a live native app must keep shipping during incremental RN adoption.

FAQ

Should I choose Expo or bare React Native?

Run the path-selection gate first and follow exactly one track; do not mix Expo and bare steps in the same migration.

What artifacts does brownfield packaging produce?

iOS XCFramework and Android AAR artifacts generated from the React Native source app for host integration.

What is the recommended integration approach?

Integrate one RN surface at a time, validate startup and runtime, then repeat per feature while keeping host apps on facade APIs.

Is React Native Brownfield Migration safe to install?

skills.sh reports 3 of 3 security scanners passed. Review the Security Audits panel on this page before installing in production.

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.