React Native 0.82 Officially Launches as the First Release Built Entirely on the New Architecture

The mobile development landscape has reached a significant milestone today with the official release of React Native 0.82. This version marks the first time a mainstream release of the framework operates entirely on the New Architecture, effectively deprecating the legacy systems that have supported cross-platform applications for nearly a decade. Alongside this architectural shift, version 0.82 introduces experimental support for Hermes V1, updates the core React library to version 19.1.1, integrates DOM Node APIs, and implements a new optimized debug build variant for Android developers.
Main Facts of the Release
React Native 0.82 represents a decisive break from the past by making the New Architecture mandatory. When the New Architecture was first introduced as an opt-in feature, and later made the default in version 0.76, developers retained the ability to fall back to the legacy architecture by toggling configuration flags such as newArchEnabled=false on Android or utilizing specific CocoaPods settings on iOS. In version 0.82, these flags are entirely obsolete. Any attempt to disable the New Architecture will be ignored, forcing applications to execute natively on the modernized synchronous execution model, JSI (JavaScript Interface), and Fabric renderer.
To facilitate a smooth transition for the ecosystem, the core team has ensured that interop layers will remain within the codebase for the foreseeable future. Backward-compatible third-party libraries that support both architectures will continue to function seamlessly without requiring immediate rewrites. Furthermore, while the legacy Java, Objective-C, and C++ classes have not been stripped from version 0.82 to avoid compounding breaking changes, their removal is scheduled to begin in the subsequent release cycle. This upcoming purge is projected to substantially reduce the overall binary and bundle sizes for production applications.
Background Context and Evolution of the New Architecture
The journey toward a completely modernized React Native infrastructure began years ago out of a necessity to bridge performance gaps between cross-platform JavaScript applications and native mobile components. The legacy architecture relied heavily on an asynchronous, serialized bridge to communicate between the JavaScript thread and the native UI threads. This bridge often created bottlenecks, resulting in frame drops, unresponsive gestures, and sluggish layout measurements during intensive operations.
To resolve these architectural limitations, Meta engineered the New Architecture, built around three foundational pillars: the JavaScript Interface (JSI) for direct, synchronous communication between C++ and JavaScript; Fabric, the new concurrent-rendering UI manager; and TurboModules, which load native modules lazily only when requested by the application. Following years of testing, iterative rollouts, and feedback loops from massive production applications like Facebook, Instagram, and Discord, the core team gained the confidence required to sunset the legacy bridge entirely.
Chronology of the Transition
The path to a New Architecture-exclusive framework has followed a carefully measured timeline designed to give developers ample time to adapt. Version 0.76 served as the critical inflection point where the New Architecture became the default setting for newly initialized projects. Following that, versions 0.81 and Expo SDK 54 acted as the final dual-architecture supported releases, containing specific diagnostic warnings and performance tooling to guide codebases through the migration process.
Developers who have not yet upgraded their projects are officially advised by the React Native core maintainers to transition first to version 0.81 or Expo SDK 54. By validating their applications under those versions while keeping the New Architecture enabled, teams can isolate and resolve compatibility issues before upgrading to version 0.82, which permanently locks out the legacy fallback mechanism.
Experimental Hermes V1 Performance Metrics
Performance optimization remains a central theme of the 0.82 release, highlighted by the introduction of an experimental opt-in version of the JavaScript engine, Hermes V1. Hermes, optimized specifically for React Native, has historically driven fast startup times and low memory footprints on mobile devices. Hermes V1 represents the next evolutionary step, introducing advanced compiler and virtual machine optimizations.
While Hermes V1 does not yet incorporate the highly anticipated Static Hermes (JS-to-native compilation) or JIT (Just-In-Time) compilation demonstrated at React Native EU 2023, initial benchmarks on complex production codebases reveal notable performance gains. Telemetry gathered from the Expensify application, a large and complex real-world project, illustrates measurable improvements across both Android and iOS environments. On low-end Android hardware, bundle load times improved by 3.2%, total Time to Interactive (TTI) improved by 7.6%, and content TTI improved by 7.2%. On iOS platforms, bundle load times saw a 9% acceleration, with total TTI improving by 2.5% and content TTI by 7.5%.

Because Hermes V1 remains in an experimental phase, developers wishing to test it must build React Native from source and configure specific dependency resolutions in their gradle properties and Podfiles, steering clear of precompiled core binaries until the engine reaches general availability.
React 19.1.1 and DOM Node APIs
React Native 0.82 upgrades the underlying React library to version 19.1.1, bringing full support for owner stacks across all environments. Previously, projects utilizing the @babel/plugin-transform-function-name plugin faced restrictions that obscured owner stack reporting. Version 0.82 lifts this limitation completely. Furthermore, the release resolves reliability issues associated with useDeferredValue and startTransition inside Suspense boundaries on mobile, bringing React Native’s concurrency behavior into closer alignment with modern web standards.
In tandem with React 19, the release introduces DOM Node APIs for native components. Historically, React Native developers interacted with native views through proprietary methods like measure and setNativeProps. Version 0.82 allows native components to expose refs implementing a subset of standard DOM interfaces, such as parentNode, parentElement, childNodes, children, getBoundingClientRect, and document traversal utilities like getElementById. This harmonization simplifies code sharing between web and mobile platforms while preserving backward compatibility with legacy measurement methods.
Android Developer Experience: Optimized Debug Builds
Addressing long-standing developer feedback regarding compilation and runtime overhead on Android, version 0.82 introduces the debugOptimized build variant. Historically, Android development configurations forced developers to choose between standard debug builds—which lacked performance optimizations and caused sluggish animations—and release builds, which stripped out vital debugging tools.
The debugOptimized build type enables critical C++ optimizations that allow animations and re-rendering cycles to execute at near-native 60 frames per second, up from roughly 20 FPS in standard debug configurations, while still permitting developers to debug their JavaScript code using React Native DevTools. Developers can trigger this build mode using the command npx react-native run-android --mode debugOptimized. This feature has also been backported to React Native 0.81 and Expo SDK 54.
Breaking Changes and Ecosystem Implications
As with any major platform evolution, React Native 0.82 introduces several breaking changes that engineering teams must account for during upgrades. Most notably, uncaught promise rejections now trigger console.error reports through the enhanced error-handling pipeline introduced in previous versions. Due to historical bugs, unhandled promise rejections were frequently swallowed silently; consequently, upgrading to version 0.82 may surface pre-existing errors in application logic, potentially creating a temporary surge in error tracking dashboards.
Additional breaking changes span across iOS, Android, and C++ layers, requiring developers to consult the official GitHub changelog for specific module deprecations and build configuration adjustments.
Broader Impact and Community Acknowledgements
The release of React Native 0.82 is the collaborative product of 93 contributors who submitted over 868 commits. The core team formally acknowledged the tireless efforts of independent open-source maintainers whose contributions ensured a stable transition to a New Architecture-only paradigm.
From an industry perspective, version 0.82 signals that cross-platform mobile engineering with React Native has matured past its transitional phase. By eliminating legacy technical debt, tightening integration with web standards like DOM Node APIs, and delivering execution engines like Hermes V1, the framework is positioning itself for sustained enterprise adoption. As version 0.79 transitions to an unsupported status under the official support policy, development teams are encouraged to leverage the React Native Upgrade Helper to transition their codebases to this new era of mobile application development.







