React Native 0.84: Hermes V1 and Precompiled Binaries Become Default

By ✦ min read

React Native 0.84 is now available, introducing several major enhancements that streamline development and boost application performance. This release makes Hermes V1 the default JavaScript engine across both iOS and Android, ships precompiled binaries for iOS by default, and continues the removal of legacy architecture components. Additionally, the minimum Node.js version has been raised to 22. Below, we explore each improvement and what it means for your projects.

Hermes V1: Default JavaScript Engine

Following an experimental opt-in period in React Native 0.82, Hermes V1 is now the standard JavaScript engine for all new and existing apps. The latest version of the Hermes engine brings substantial enhancements to both the compiler and virtual machine, resulting in faster execution speeds and lower memory consumption.

React Native 0.84: Hermes V1 and Precompiled Binaries Become Default

Immediate Benefits for Your Apps

Opting Out of Hermes V1

If you need to revert to the legacy Hermes compiler, you can do so via package manager overrides and platform-specific settings:

Package Manager Override

Force version 0.15.0 of the hermes-compiler package in your package.json:

iOS

When installing CocoaPods dependencies, set the environment variables RCT_HERMES_V1_ENABLED=0 and RCT_USE_PREBUILT_RNCORE=0.

Android

Add hermesV1Enabled=false to android/gradle.properties and configure your application to build React Native from source.

Precompiled Binaries on iOS by Default

React Native 0.84 ships precompiled binaries on iOS out of the box, a feature that was previously opt-in. This change significantly cuts down build times for iOS apps because the React Native core no longer needs to be compiled from source during every clean build. The precompiled .xcframework binaries are automatically downloaded and integrated during pod install.

Note: If you need to build React Native from source—for example, to opt out of Hermes V1—you can disable precompiled binaries by setting RCT_USE_PREBUILT_RNCORE=0 when installing pods.

Legacy Architecture Components Removed

Building on the transition that began in 0.82, where the New Architecture became the only runtime option, React Native 0.84 continues to strip out legacy architecture code from both iOS and Android. As outlined in the RFC, each release removes several legacy classes.

iOS Changes

In 0.83, the experimental flag RCT_REMOVE_LEGACY_ARCH was introduced to compile out legacy architecture code. Starting with 0.84, this behavior is now the default. Legacy architecture code is no longer included in iOS builds, reducing both build time and app size. Apps already running on the New Architecture should experience no breakages.

Further removals are planned for future releases, so it is advisable to ensure your project fully embraces the New Architecture to avoid any compatibility issues.

Node.js 22 Minimum Requirement

This release also raises the minimum Node.js version to 22. Developers should update their local environments accordingly to continue building React Native apps smoothly.

Summary

React Native 0.84 delivers meaningful improvements in performance and developer experience. With Hermes V1 as the default engine, precompiled iOS binaries, and the ongoing removal of legacy architecture, the framework continues to mature. Upgrading is straightforward for most apps, and the changes are designed to be backwards-compatible where possible. For details on all changes and known issues, refer to the official release notes.

Tags:

Recommended

Discover More

The Evolution of Digital Rights in the Arab World: Beyond the Arab SpringPython 3.15.0 Alpha 1: A Developer Preview GuideHow to Understand the Global Electric Vehicle Sales Landscape in March 20264 Essential Linux App Updates You Missed in April 2026Claude Projects vs Gemini Notebooks: The AI Showdown You Need to See