Download Latest Version Reanimated - 4.7.1 source code.zip (160.0 MB) Google Add to Preferred Sources
Home / worklets-0.13.0
Name Modified Size InfoDownloads / Week
Parent folder
react-native-worklets-0.13.0.tgz 2026-09-21 7.4 MB
README.md 2026-09-18 12.1 kB
Worklets - 0.13.0 source code.tar.gz 2026-09-18 157.8 MB
Worklets - 0.13.0 source code.zip 2026-09-18 160.0 MB
Totals: 4 Items   325.2 MB 4

Key changes

Networking on Worklet Runtimes in Bundle Mode

Worklet Runtimes created in Bundle Mode now ship a standalone networking module: XMLHttpRequest, Blob, FileReader, fetch (whatwg), Headers, Request, Response, FormData, AbortController and AbortSignal. It replaces the earlier networking preview and its FETCH_PREVIEW_ENABLED feature flag. createWorkletRuntime accepts a new enableNetworking option, which defaults to true and is forced off on runtimes without the Event Loop.

OXC port of the Worklets Babel plugin

The Worklets Babel plugin has a Rust port built on OXC for Bundle Mode. It is available as react-native-worklets/plugin-oxc/babel, with prebuilt binaries for macOS, Linux and Windows on x64 and arm64.

Fixed-type Synchronizable

createSynchronizable accepts a new fixedType option. A fixed-type Synchronizable holds a number or a boolean without serialization and exposes setDirty, a non-exclusive write that doesn't wait for other setDirty calls. On the C++ side Synchronizable is now an interface over std::variant values with a SynchronizableDynamic implementation, and several races on exotic architectors and lock leaks in the dynamic implementation are fixed.

Faster startup

The native side of WorkletsModule is created on a background thread as soon as the module is created, so installTurboModule only attaches it to the RN Runtime. In Bundle Mode the bundle is evaluated on the UI Worklet Runtime on a background thread while the RN Runtime evaluates it, instead of on the JS thread in start.

Hermes microtask queue on Worklet Runtimes

Worklet Runtimes use the built-in Hermes microtask queue instead of a custom JS implementation.

Removed SerializableInitializer (SerializableHandle)

The Serializable handle is gone: SerializableInitializer, createSerializableInitializer and the __init clone path are removed, and makeShareable serializes its value eagerly into a retaining Serializable. RetainingSerializable caches its value per runtime. Serializable::ValueType::HandleType stays in the Compat Stable API enum for ABI compatibility and extractSerializable throws for it.

Leaner Babel plugin output

Worklet closures are stored as arrays instead of objects, closure-free worklets are exported directly in Bundle Mode without factory wrappers, and implicit worklet context objects are removed. navigator is a known global, so worklets resolve it on their own runtime instead of capturing the main runtime's object by closure.

iOS Swift Package Manager support

Worklets can be integrated on iOS through Swift Package Manager via Package.swift and SPM integration metadata in react-native.config.js. The nightly compatibility check builds the app via SPM on React Native >= 0.87.

Safer Worklet Runtime teardown

Destroying a Worklet Runtime now acquires the runtime mutex first, so a synchronous call in flight on another thread finishes, discarded results of synchronous calls are destroyed under the lock, and pending jobs of the async queue and event loop are aborted under the lock instead of destroying their JSI handles on an unrelated thread.

React Native 0.88 support

Other changes

Full Changelog: https://github.com/software-mansion/react-native-reanimated/compare/worklets-0.12.2...worklets-0.13.0

Source: README.md, updated 2026-09-18