React Native 0.84: Hermes V1 Now Default, Build Times Slashed, and Legacy Architecture Removed
What’s New in React Native 0.84
React Native 0.84 has arrived, and it brings a trio of significant improvements that will make your development workflow faster and your apps more performant. The headline change is that Hermes V1 is now the default JavaScript engine on both iOS and Android, following its initial opt‑in debut in version 0.82. Alongside this, iOS builds are now delivered with precompiled binaries out of the box, and the team has continued removing Legacy Architecture code to streamline the runtime. Let’s dive into each change.
Hermes V1 as the Default JavaScript Engine
Hermes V1 represents the next evolutionary step for the Hermes engine, with substantial improvements to both its compiler and VM. This translates to measurably better JavaScript execution speed and reduced memory usage. Since Hermes has been the default engine since React Native 0.70, upgrading to 0.84 means your app will automatically start using Hermes V1 — no migration work is required.
Automatic Performance Gains
All apps built with React Native 0.84 will benefit from the performance boost introduced by Hermes V1. Expect faster startup times, smoother runtime execution, and lower memory footprint — all without any configuration changes on your part.
How to Opt Out of Hermes V1
While we recommend staying with Hermes V1 for the best performance, you can revert to the legacy Hermes compiler if necessary. Follow these steps for your environment:
Package Manager Override
Force the installation of the legacy hermes-compiler package in your package.json using the appropriate override mechanism for your package manager:
// npm – package.json
"overrides": { "hermes-compiler": "0.15.0" }
// Yarn – package.json
"resolutions": { "hermes-compiler": "0.15.0" }
// pnpm – package.json
"pnpm": { "overrides": { "hermes-compiler": "0.15.0" } }
iOS Environment Variables
When installing CocoaPods dependencies, set the following environment variables:
RCT_HERMES_V1_ENABLED=0 RCT_USE_PREBUILT_RNCORE=0
Android Configuration
Add hermesV1Enabled=false inside your android/gradle.properties file, and configure the application to build React Native from source.
Precompiled iOS Binaries by Default
Starting with React Native 0.84, iOS apps ship with precompiled binaries enabled out of the box. This feature, previously available as an opt‑in, eliminates the need to compile React Native core from source during every clean build. Instead, the .xcframework binaries are automatically downloaded during pod install, significantly reducing iOS build times.
If you need to build from source — for instance, when opting 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 foundation laid in 0.82 — which made the New Architecture the only runtime option — React Native 0.84 continues the removal of Legacy Architecture code from both platforms. Starting with iOS, the experimental RCT_REMOVE_LEGACY_ARCH flag, introduced in 0.83, is now enabled by default. This means Legacy Architecture code is no longer compiled into your iOS builds, resulting in smaller app sizes and faster build times.
For apps already fully migrated to the New Architecture, no breakages are expected. The removal focuses on classes that were already deprecated and unused in the New Architecture runtime.
Node.js 22 Minimum Requirement
To align with the latest tooling and security updates, React Native 0.84 now requires Node.js 22 as the minimum supported version. If you haven’t already, update your development environment to Node.js 22 or higher.
Upgrade Today for Better Performance
React Native 0.84 delivers meaningful improvements that make your apps faster and your builds quicker. With Hermes V1 as the default, precompiled iOS binaries, and the continued cleanup of Legacy Architecture code, upgrading is a no‑brainer. Check the opt‑out instructions if you need to preserve compatibility, but for most projects, the upgrade path is seamless.
Related Discussions