React Native Weekly
← Back to archive

2025-09-28 · #4

React Native Weekly #4 react-native-nitro-fetch, expo-sqlite localStorage, Expo SDK 54 and more

Call Native APIs Directly from React Native#

Using the in-development react-native-node-api, it is now possible to call iOS framework APIs directly from React Native via NativeScript. This could eventually allow developers to access native functionality without relying on React Native Native Modules.

Jamie Birch @birch_js · 2025年9月26日

After 6+ years of failed experiments, it's finally working. Direct native API access from JS in React Native 🥹 Access the full iOS SDK – like a native dev. Cross threads – like a native dev. Today, my brother in JavaScript, you are a native dev.

Introducing react-native-nitro-fetch for High-Speed Data Fetching#

react-native-nitro-fetch has arrived, leveraging Nitro Modules to deliver fast data fetching — using Cronet on Android and URLSession on iOS. Features like prefetching, disk caching, HTTP2, QUIC, and Brotli give it a performance edge over the standard React Native fetch. It also supports Worklets, allowing heavy operations like JSON parsing to run on a background thread, keeping the UI thread free from blocking.

Margelo @margelo_com · 2025年9月22日

We just launched a new library: react-native-nitro-fetch! 🚀 - ⚡️ Fast HTTP stack using Cronet (super optimized Chromium implementation) - 💪 Supports HTTP/2, QUIC, Brotli, and disk cache - ⏰ "Prefetching" feature to start loading before your JS code runs - 🧵 Worklet support!

expo-sqlite localStorage API Now Available in Expo SDK 54#

expo-sqlite in Expo SDK 54 gains a localStorage API. This makes it easier to use than AsyncStorage while delivering better performance.

Evan Bacon 🥓 @Baconbrix · 2025年9月19日

💡 Did you know there's a new spec-compliant `localStorage` API in @Expo SDK 54! The sync API is easier than AsyncStorage, and works across platforms with no additional overhead on web. Built for New Architecture and uses our powerful new SQLite native module for fast I/O.

Expo SDK 54 Brings Support for More Package Managers#

Expo Autolinking has leveled up in Expo SDK 54. In addition to npm and Yarn, pnpm and Bun are now supported, and monorepo compatibility has also been improved.

Expo @expo · 2025年9月22日

Expo Autolinking got smarter in SDK 54⚡️ ♢ Works with all major package managers (npm, pnpm, Yarn, Bun) ♢ Handles monorepos + hoisting conflicts ♢ Transitive React Native deps now autolink automatically Basically you'll find less "copy-paste" situations and more “it just

HeroUI Native alpha 13#

HeroUI Native alpha 13 introduces a new Dialog component. It appears to be a feature-rich component with swipe support and background blur, among other capabilities.

A sample resembling the Linear app has also been added to the ShowCase.

HeroUI @hero_ui · 2025年9月23日

HeroUI Native alpha 13 is here 🚀 What’s new: ⚡️ New Dialog component (performant, swipable, customizable) 🌀 Beautiful animations out of the box 🎨 New Showcase: @linear Issue screen built only with HeroUI components + default theming Big step forward ✨

Other#

Animated Header Using Expo Router, Reanimated, and More#

An example of a header that animates smoothly when switching between tabs.

make it animated @makeitanimated · 2025年9月22日

Fun pattern here: one animated header shared across all tabs. Using @expo-router, passing state (like search query or filters) through params so the search tab can pick it up. ✦ Built for React Native ✦ Powered by @swmansion reanimated ✦ Available on makeitanimated.dev

Lessons Learned Upgrading React Native 0.72 → 0.76#

A project on React Native 0.72 needed to be upgraded to 0.76 or higher in order to support Android API 35.

While React Native is currently at 0.81, jumping straight from 0.72 to 0.81 would require too many changes at once, so the team decided to target 0.76 as a first step.

The article covers the steps taken during that migration and the lessons learned along the way.

React Native 0.72 → 0.76: Lessons From the TrenchesThis post documents my journey of upgrading React Native from 0.72 to 0.76. Rather than a step-by-step guide, think of this as a collection…Medium

One More Thing#

Jamie Birch’s experiment calling native APIs directly from React Native is really fascinating!

This is made possible by invoking NativeScript — a framework originally designed to call native APIs directly from JavaScript — from within React Native.

NativeScript - Write Native with TypeScriptBuild native iOS and Android apps with TypeScript, direct platform API access, and the JavaScript tooling you already know.NativeScript

NativeScript 8.9, released this year, added Node-API support, and with react-native-node-api bringing Node-API support to React Native, the same kind of direct native access is becoming possible in the React Native world too.

I had been wondering “what would be the real benefit of using Node-API in React Native?” — and I never expected the answer to be direct access to native APIs. What a discovery!