Rocket Ship

#050 - New Arch, JSI, Native Modules & Rust with Oscar Franco


Listen Later

In this conversation, Simon Grimm interviews Oskar Franco about the new architecture in React Native. They discuss the current bridge concept, the need for a new architecture, and the three main components of the new architecture: Fabric, JSI, and CodeGen. They also talk about the challenges and benefits of migrating to the new architecture, the use of host objects, and how to create a new architecture-ready native module with JSI. In this conversation, Oscar Franco discusses different module systems in React Native, including Turbo Modules, Expo Modules, and Nitro Modules. He explains that Turbo Modules came with a new architecture and offer benefits such as code generation and lazy initialization. Expo Modules are easy to initialize but may have performance issues for certain use cases. Nitro Modules, are considered the fastest alternative. Oscar also talks about using Rust in React Native and the benefits it provides, such as memory safety and better tooling. He created the OP-SQLite library, which is claimed to be the fastest SQLite library for React Native.

Learn React Native - https://galaxies.dev

Oscar Franco

  • Oscar X: https://x.com/ospfranco
  • Oscar website: https://ospfranco.com/
  • Oscar GitHub: https://github.com/ospfranco
  • Oscar YouTube: https://www.youtube.com/@ospfranco

Links

  • About the New Architecture: https://reactnative.dev/docs/the-new-architecture/landing-page
  • React Native Bridgeless Mode for Dummies: https://www.youtube.com/watch?v=K5HBIKAjZ4U
  • React Native Builder Bob: https://github.com/callstack/react-native-builder-bob
  • OP-Sqlite: https://github.com/OP-Engineering/op-sqlite

Takeaways

  • The current bridge concept in React Native uses JSON serialization, which can become a bottleneck for performance.
  • The new architecture in React Native includes Fabric, JSI, and CodeGen, which aim to improve performance and provide better interoperability between JavaScript and native code.
  • Migrating to the new architecture can be challenging, especially for larger projects and dependencies that are not updated for the new architecture.
  • The use of host objects allows for the creation of hybrid objects that have both native and JavaScript functionality.
  • Creating a new architecture-ready native module with JSI can be facilitated by using tools like React Native Builder Bob.
  • Turbo Modules offer benefits such as code generation and lazy initialization, but setting them up can be painful.
  • Expo Modules are easy to initialize and portable, but they may have performance issues for certain use cases.
  • Nitro Modules, developed by Marc Rousavy, are considered the fastest alternative.
  • Rust is a memory-safe language with integrated tooling and is becoming popular for writing SDKs for React Native.
  • OP-SQLite is a fast SQLite library for React Native that uses host objects for improved performance.
...more
View all episodesView all episodes
Download on the App Store

Rocket ShipBy Simon Grimm

  • 5
  • 5
  • 5
  • 5
  • 5

5

5 ratings


More shows like Rocket Ship

View all
The Changelog: Software Development, Open Source by Changelog Media

The Changelog: Software Development, Open Source

285 Listeners

Software Engineering Daily by Software Engineering Daily

Software Engineering Daily

630 Listeners

React Native Radio by Jamon Holmgren, Robin Heinze, Mazen Chami

React Native Radio

57 Listeners

Soft Skills Engineering by Jamison Dance and Dave Smith

Soft Skills Engineering

271 Listeners

Machine Learning Guide by OCDevel

Machine Learning Guide

755 Listeners

Syntax - Tasty Web Development Treats by Wes Bos & Scott Tolinski - Full Stack JavaScript Web Developers

Syntax - Tasty Web Development Treats

984 Listeners

CoRecursive: Coding Stories by Adam Gordon Bell - Software Developer

CoRecursive: Coding Stories

185 Listeners

My First Million by Hubspot Media

My First Million

2,601 Listeners

The Stack Overflow Podcast by The Stack Overflow Podcast

The Stack Overflow Podcast

63 Listeners

All-In with Chamath, Jason, Sacks & Friedberg by All-In Podcast, LLC

All-In with Chamath, Jason, Sacks & Friedberg

8,649 Listeners

React Universe On Air by Callstack

React Universe On Air

4 Listeners

PodRocket - A web development podcast from LogRocket by LogRocket

PodRocket - A web development podcast from LogRocket

58 Listeners

Huberman Lab by Scicomm Media

Huberman Lab

28,161 Listeners

devtools.fm: Developer Tools, Open Source, Software Development by Andrew Lisowski, Justin Bennett

devtools.fm: Developer Tools, Open Source, Software Development

25 Listeners

localfirst.fm by localfirst.fm

localfirst.fm

17 Listeners