
Rocket Ship #050 - New Arch, JSI, Native Modules & Rust with Oscar Franco
Sep 24, 2024
Oscar Franco, a freelance system engineer and creator of popular React Native libraries, dives deep into React Native's new architecture. He explains the transition from the traditional bridge to the groundbreaking JSI and Fabric components. Oscar outlines the differences between Turbo Modules, Expo Modules, and Nitro Modules, highlighting performance benefits and challenges in migrating existing applications. He also shares insights on utilizing Rust for better tooling and memory safety, along with his fastest SQLite library, OP-SQLite, enhancing performance in mobile applications.
AI Snips
Chapters
Transcript
Episode notes
Inventory Dependencies Before Migrating
- Audit your dependencies for large unmaintained projects (e.g., Firebase) before migrating to the new architecture.
- If a critical dependency lacks migration, plan time or budget for custom migration work or replacement.
Use BuilderBob To Scaffold New Modules
- Use react-native-builder-bob to scaffold Turbo/JSI-ready native modules instead of hand-creating many platform files.
- The tool scaffolds choices (C++, Obj-C, Kotlin) and saves significant setup time.
Multiple Module Systems Offer Different Trade-Offs
- Multiple module systems exist because they make different trade-offs: TurboModules, Expo Modules, and Nitro.
- No single approach is perfect; choice depends on performance needs and developer ergonomics.
