20521
Environment & Energy

React Native 0.85 Released: Enhanced Animations and Developer Tooling

Posted by u/Fonarow · 2026-05-12 22:37:07

Overview

React Native 0.85 is now available, bringing a host of improvements focused on animation performance, developer experience, and compatibility. This update introduces a new animation backend, moves the Jest preset to its own package, and delivers several other enhancements and fixes. Below, we break down the key changes and what they mean for your development workflow.

React Native 0.85 Released: Enhanced Animations and Developer Tooling

Key Highlights

New Animation Backend

One of the most significant additions in React Native 0.85 is the Shared Animation Backend, developed in partnership with Software Mansion. This new internal engine powers both the Animated and Reanimated libraries under the hood. By centralizing the main animation update logic within React Native core, Reanimated can now achieve performance gains that were previously unattainable. The approach also ensures that update reconciliation is thoroughly tested and remains stable across future React Native releases.

For Animated, developers can now animate layout properties using the native driver—something that was previously restricted. This means you can animate flexbox and positioning props (like width, height, margin, etc.) with full native performance. Here’s a quick example:

import { Animated, Button, View, useAnimatedValue } from 'react-native';

function MyComponent() {
  const width = useAnimatedValue(100);
  const toggle = () => {
    Animated.timing(width, {
      toValue: 300,
      duration: 500,
      useNativeDriver: true,
    }).start();
  };

  return (
    <View style={{ flex: 1 }}>
      <Animated.View style={{ width, height: 100, backgroundColor: 'blue' }} />
      <Button title="Expand" onPress={toggle} />
    </View>
  );
}

More examples are available in react-native/packages/rn-tester/js/examples/AnimationBackend/. To opt in, you must enable the experimental channel of React Native (note: this experimental feature will only be available starting from React Native 0.85.1, which is expected shortly).

React Native DevTools Improvements

The developer tools have received several notable upgrades:

  • Multiple CDP Connections: React Native now supports multiple simultaneous Chrome DevTools Protocol connections. This means tools like React Native DevTools, VS Code, and AI agents can all connect at the same time without conflicting, enabling richer, composable development workflows.
  • Native Tabs on macOS: The desktop app has been updated to compile for macOS 26, and it now includes system-level tab handling. You can access this via Window > Merge All Windows when multiple DevTools windows are open—useful for power users managing multiple debugging sessions.
  • Request Payload Previews: On Android, request body previews in the Network Panel have been restored after a regression. This allows you to inspect the data being sent in network requests directly within DevTools.

Metro TLS Support

React Native 0.85 enhances the Metro dev server by allowing it to accept a TLS configuration object. This enables HTTPS (and WSS for Fast Refresh) during development, which is crucial for testing secure features like service workers or WebSockets locally. No more workarounds—just configure TLS and develop with confidence.

Breaking Changes

As with any major release, React Native 0.85 includes some breaking changes that require attention when upgrading.

Jest Preset Moved to New Package

The Jest preset has been extracted from the core React Native package into a dedicated package: @react-native/jest-preset. If you previously imported the preset using react-native/jest-preset, you will need to update your Jest configuration to point to the new package. This change allows the preset to be maintained independently and reduces the size of the core library.

Dropped Support for EOL Node.js Versions

Support for Node.js versions that have reached end-of-life (EOL) has been removed. Ensure your development environment uses a supported Node.js version (currently v18 or later) to avoid compatibility issues.

StyleSheet.absoluteFillObject Removed

The StyleSheet.absoluteFillObject property has been removed. Migrate to StyleSheet.absoluteFill (which returns a style object) or define the styles manually. The deprecation was announced in earlier releases, so this removal should not come as a surprise.

Other Breaking Changes

  • Several deprecated APIs have been cleaned up. Refer to the full changelog for a complete list.
  • Minor changes to internal module exports may affect custom native modules. Update your module declarations as needed.

Conclusion

React Native 0.85 is a solid step forward, with the new animation backend offering better performance and expanded capabilities for layout animations. The DevTools improvements—especially multiple CDP connections—streamline debugging, while Metro TLS support modernizes the development server. Be sure to account for the breaking changes when upgrading, and take advantage of the new features to enhance your React Native apps.