The Wire · Showcase
REACT NATIVE BRINGS ZERO-COPY BUFFERS TO OBJC TURBOMMODULES
By RepoJournal · Filed · About Meta
React Native is closing the performance gap for iOS native code with direct ArrayBuffer support in TurboModules, letting you pass binary data to Objective-C without serialization overhead.
React Native shipped ArrayBuffer support for ObjC TurboModules [1], mirroring the C++ implementation already in place. This means your native iOS modules can now accept and return binary data directly through JSI, eliminating the copy-on-every-call penalty that killed performance on image processing, audio, and encryption workloads. The codegen system now understands ArrayBufferTypeAnnotation for both parameters and return types, automatically wiring up NSMutableData conversions [1]. The conversion layer uses zero-copy semantics via NSMutableData's initWithBytesNoCopy, so a 10MB image buffer stays a 10MB image buffer end-to-end. If you've been bridging binary data through base64 or byte arrays as a workaround, this is the upgrade path you've been waiting for.
One email a day. Unsubscribe in one click.
Keep up with Meta in about 3 minutes a day: what actually shipped — the commits, pull requests, releases, and security advisories that matter.
One email a day. Unsubscribe in one click. Read a past issue →
Action items
- → Update React Native and test ArrayBuffer TurboModule definitions in your native modules facebook/react-native [plan]
- → Review codegen specs for binary-heavy modules (image, audio, crypto) to adopt NSMutableData params facebook/react-native [monitor]
References
- [1] ArrayBuffer support to ObjC TurboModules facebook/react-native