React Native's new architecture replaces the old JSON-serializing Bridge with JSI (JavaScript Interface), a C++ abstraction layer that allows JavaScript and native code to share memory references directly. Instead of copying objects as JSON across a bridge, JSI lets C++ hold GC-aware handles (jsi::Object) pointing into the JS engine's memory, enabling synchronous native calls where appropriate. The reverse also works via HostObjects — C++ objects exposed to JS that route method calls directly into native code. On iOS, this is seamless via Objective-C++ (.mm files) since both runtimes share memory. On Android, the JVM boundary requires JNI, which React Native handles cleanly through Meta's fbjni library. The result is direct, low-overhead access to device APIs through TurboModules and Fabric, making the old 'minimize bridge crossings' mental model obsolete.

6m read timeFrom medium.com
Post cover image
Table of contents
RN New Architecture MythWhat actually happened? (Introduction of JSI)How JSI works in React Native?How JNI (Java Native Interface) works
513 Impressions