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.
Ask episode
AI Snips
Chapters
Transcript
Episode notes
ADVICE

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.
ADVICE

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.
INSIGHT

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.
Get the Snipd Podcast app to discover more snips from this episode
Get the app