You Don't Need a Rewrite: Expo's New Brownfield React Native Story
Article Summary
Darin Wilson from Infinite Red reveals how Expo just eliminated the biggest barrier to adopting React Native: you can now integrate it into existing native apps without a rewrite, and it takes just five words to start.
Based on Gabriel Donadel's talk at Chain React 2026, this article breaks down how Expo SDKs 54 and 55 transformed brownfield React Native development. The new expo-brownfield package and isolated integration approach mean native teams can adopt React Native incrementally without disrupting their existing codebase or workflow.
Key Takeaways
- Two integration modes: integrated (shared codebase) or isolated (separate repos, zero RN setup for native devs)
- All Expo packages now brownfield compatible after SDK 54 bug hunt
- Agent skill automates integration with 'add Expo to this app' prompt
- React Native screens coexist with native screens, no directory restructuring required
- Isolated mode exports native library that integrates like any third party dependency
Expo's brownfield tooling now makes it possible to add React Native to native apps screen by screen, with minimal infrastructure changes and optional separation between native and RN teams.
About This Article
Native app developers hit a real problem when trying to use React Native. They had to reorganize their entire directory structures and build a lot of new infrastructure, which made it hard to adopt React Native gradually in existing projects.
Expo SDK 54 removed the need to restructure directories. Then SDK 55 went further and let React Native code fit into apps as they already were, instead of forcing apps to change how they work.
Darin Wilson's brownfield team tested the integration across 100 open-source native apps. Each test revealed new challenges, which they used to improve the expo-brownfield package and agent skill so it would work better with more apps.