React Native 0.85 Unveils Shared Animation Backend and DevTools Overhaul to Streamline Cross-Platform Development

Meta and the React Native steering committee have officially announced the release of React Native 0.85, a major update that signals a new era for mobile application performance and developer productivity. This latest version introduces the highly anticipated Shared Animation Backend, a structural refinement of the testing ecosystem through a dedicated Jest package, and critical security updates for the Metro development server. As the mobile development landscape shifts toward more complex, high-performance user interfaces, version 0.85 addresses long-standing limitations in layout animations and provides developers with a more robust toolset for debugging and testing.
The release arrives at a pivotal moment for the framework, which continues to power some of the world’s most-used applications, including Facebook, Instagram, and Shopify. With 604 commits from 58 individual contributors, version 0.85 reflects a collaborative effort between Meta’s internal engineering teams and the broader open-source community, most notably the specialized Polish software house Software Mansion.
The Shared Animation Backend: A Paradigm Shift in Performance
The headline feature of React Native 0.85 is the introduction of the Shared Animation Backend. Developed in close collaboration with Software Mansion—the creators of the widely used Reanimated and Gesture Handler libraries—this new engine represents a fundamental rewrite of how animations are processed within the React Native core.
Historically, React Native developers faced a divide between the built-in "Animated" API and the third-party "Reanimated" library. While both served the purpose of creating fluid motion, they often operated on different internal logic, leading to inconsistencies and performance bottlenecks when attempting to reconcile updates with the React Native layout engine. The Shared Animation Backend unifies the main animation update logic directly within the React Native core.
The most immediate benefit of this architectural shift is the removal of previous limitations regarding layout props. In earlier versions of React Native, developers were restricted from using the "native driver" for layout properties such as width, height, and flexbox positions. These animations had to be calculated on the JavaScript thread, which could lead to "jank" or dropped frames if the thread was under heavy load. With version 0.85, layout props can now be offloaded to the native driver, ensuring that complex layout transitions remain smooth regardless of JavaScript thread activity.
Industry analysts suggest that this change is a direct response to the rising demand for "fluid interfaces" that mimic the responsiveness of native iOS and Android applications. By moving reconciliation logic into the core, the framework ensures that future updates will maintain stability and that performance improvements discovered by the Reanimated team can be propagated more effectively across the entire ecosystem.
Security and Connectivity: Metro TLS Support
In an era of increasing cybersecurity awareness, React Native 0.85 introduces Transport Layer Security (TLS) support for the Metro development server. This update allows the Metro server to accept a TLS configuration object, enabling developers to use HTTPS and WSS (Web Socket Secure) during the local development phase.
This feature is particularly critical for developers working with modern web APIs and backend services that enforce secure connections. Previously, testing secure interactions often required complex workarounds or third-party proxy tools. By allowing a native configuration in metro.config.js, developers can now provide certificate authorities (CA), certificates, and keys directly.
The inclusion of TLS support also improves the reliability of "Fast Refresh," the feature that allows developers to see code changes in real-time without restarting the application. For organizations with strict internal security protocols, this update ensures that the development environment remains compliant with corporate data protection standards. To facilitate this transition, the React Native team recommends the use of tools like "mkcert," which simplifies the generation of locally-trusted certificates without triggering browser or OS warnings.
Structural Refinements and the Jest Migration
React Native 0.85 continues the "Lean Core" philosophy by extracting the Jest testing preset from the main react-native package into a dedicated standalone package: @react-native/jest-preset. This move is part of a broader effort to reduce the size of the core library and provide more granular control over testing configurations.
For years, the Jest preset was bundled directly within the framework, which often led to versioning conflicts and unnecessary bloat for projects that used alternative testing frameworks. By moving to a dedicated package, the React Native team can iterate on testing tools more rapidly without requiring a full framework update. Developers upgrading to 0.85 will need to perform a simple migration in their jest.config.js file, shifting the preset reference to the new scoped package.
While this is technically a breaking change, it is viewed as a necessary step toward a more modular architecture. It allows the core React Native package to remain focused on UI rendering and runtime logic, while developer tooling is managed through specialized modules.

Dropping Legacy Support and Enhancing DevTools
As the framework adopts modern technologies, it is also shedding support for older environments. React Native 0.85 officially drops support for end-of-life (EOL) Node.js versions. The new minimum requirement is Node.js v20.19.4 or higher. This shift ensures that the React Native CLI and build tools can leverage the performance improvements and security patches present in the latest Long-Term Support (LTS) versions of the Node.js runtime.
Simultaneously, the release brings significant improvements to the React Native DevTools. One of the most visible changes is the implementation of native tabs on macOS, which provides a more integrated experience for developers working within the Apple ecosystem. These UI refinements are aimed at reducing the friction of the debugging process, allowing developers to navigate between inspector tools, logs, and network monitors more intuitively.
Furthermore, the release sees the removal of the deprecated StyleSheet.absoluteFillObject API. Developers are now encouraged to use StyleSheet.absoluteFill exclusively. This cleanup of the API surface area is intended to reduce confusion and promote best practices in layout styling.
Chronology of Development and Release Cycle
The path to React Native 0.85 has been marked by a series of incremental updates designed to stabilize the "New Architecture" (Fabric and TurboModules) introduced in previous years.
- Version 0.82: Focused on stabilizing the New Architecture and improving the reliability of the Bridge-less mode.
- Version 0.83 & 0.84: Introduced refinements to the autolinking process and enhanced support for Kotlin and Swift in native modules.
- Version 0.85: Represents the culmination of these efforts, shifting focus from the underlying architecture to the developer experience and high-level animation performance.
With the release of 0.85, version 0.82 officially moves to "unsupported" status according to the React Native support policy. This rolling support window encourages developers to stay within three minor versions of the latest release to ensure they receive critical security patches and bug fixes.
Impact on the Mobile Development Ecosystem
The implications of React Native 0.85 extend beyond the immediate technical features. By collaborating so closely with Software Mansion, Meta is signaling a more integrated approach to its relationship with the open-source community. This partnership model reduces the fragmentation that has occasionally plagued the React Native ecosystem, where developers were often forced to choose between "official" and "community" solutions.
The ability to animate layout props with the native driver is a direct challenge to competing frameworks like Flutter, which has long touted its high-performance rendering engine as a primary advantage. React Native’s move to a shared animation backend narrows this gap, offering the developer flexibility of React with the performance characteristics of native UI components.
Furthermore, the integration with the upcoming Expo SDK 56 ensures that a large portion of the React Native community will have a streamlined path to adopting these new features. Expo, which provides a suite of tools built on top of React Native, remains the preferred entry point for many developers, and its commitment to version 0.85 will likely drive rapid adoption across the industry.
Official Responses and Community Acknowledgement
In the release notes, the React Native team expressed gratitude to the dozens of contributors who made this version possible. The acknowledgement of 58 contributors highlights the decentralized nature of the framework’s current development. While Meta remains the primary steward, the framework is increasingly shaped by engineers from Microsoft, Software Mansion, and independent consultants worldwide.
"The Shared Animation Backend is a testament to what we can achieve when we align the core framework with the most innovative tools in the community," a representative from the React Native team noted during the announcement. "By bringing these capabilities into the core, we are providing every developer with the power to create world-class animations with minimal overhead."
Upgrading and Future Outlook
For teams looking to upgrade, the React Native Upgrade Helper remains the primary tool for navigating the code changes between versions. Given the breaking changes related to the Jest preset and the Node.js version requirements, developers are advised to conduct thorough regression testing, particularly in their CI/CD pipelines.
As React Native moves toward the 1.0 milestone, version 0.85 stands as a robust foundation. The focus on performance, security through TLS, and a cleaner API surface area suggests that the framework is maturing into a more stable and enterprise-ready platform. With the immediate release of version 0.85.1 expected to unlock the experimental channel for the new animation backend, the community is poised to begin a new chapter of innovation in mobile user interface design.
The long-term strategy for React Native appears clear: simplify the core, empower the community, and provide the performance necessary to compete with native development head-on. As the framework continues to evolve, version 0.85 will likely be remembered as the point where high-performance animations became accessible to every React Native developer, regardless of their level of native expertise.




