

#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
JSON Bridge Causes Performance Bottleneck
- React Native's original bridge serialized data via JSON which becomes a performance bottleneck as apps grow.
- Removing JSON serialization (bridgeless) enables much faster native-JS interaction and rendering.
New Architecture Is Three-Part Shift
- The new architecture is three parts: Fabric, JSI, and CodeGen, and 'bridgeless' refers to removing the old JSON-based bridge.
- Turning on bridgeless forces use of new modules and removes compatibility with old module APIs.
Fabric Replaces Old Renderer For Faster UI
- Fabric replaces the old renderer and avoids JSON parsing by using C++ to update the UI tree.
- Apps with many UI updates should see faster rendering under Fabric.