2026-02-24 · #21
React Native Weekly #21 TanStack Router RN Support, GPU Shader Effects, React Navigation Activity and more
New KeyboardChatScrollView Component Added to react-native-keyboard-controller#
react-native-keyboard-controller v1.21.0-beta.3 has been published to npm, introducing a new KeyboardChatScrollView component designed for chat UIs. With the traditional KeyboardAvoidingView, opening and closing the keyboard triggered 40+ re-layouts, but the new component brings that count down to zero — a massive performance improvement on both iOS and Android. The stable v1.21.0 release is also coming soon.
This is what happens if you are using `KeyboardAvoidingView` from react-native-keyboard-controller for chat interfaces. 40+ re-layouts for keyboard close/hides 🤯 This is not critical for this example project, but if you have very complex layout you will see perf degradation👇
TanStack Router Adds React Native Support, Navigation Experiments Underway#
TanStack Router is making progress on React Native support. Integration with RN Screens, swipe-back gestures, and stack virtualization using <Activity> have all been confirmed working. Experiments are also underway around new navigation features like declarative stack lifecycle management and reuse semantics.
My experiments with TanStack Native Router so far are so cool - declarative stack lifecycle virtualization (active / paused / detached) w/ configurable reuse semantics - navigate/<Link> can do standard push/replace, but also a new reuse option! - reuse matching can be nearest, twitter.com/tannerlinsley/stat…
React Navigation 8 Experiments with React.Activity and Screen Management#
React Navigation 8 is exploring two approaches: managing inactive screens with React.Activity (as a replacement for the experimental freeze), and fully unmounting inactive screens. Handling nested navigators remains a challenge, but implementations that work across both native and Web are being considered.
For React Navigation 8, we're experimenting with 2 things: - Using `React.Activity` (will replace experimental freeze) - Unmounting inactive screens entirely It's a bit tricky because navigators can be nested. But hopefully it'll work out. twitter.com/satya164/status/20…
Last week I was playing with keeping content visible with `<Activity mode="hidden">` and managed to come up with 2 approaches that work on native and web. Should I write an article about it?
react-native-bootsplash and react-native-localiz Now Support Typed Expo Plugin Config#
react-native-bootsplash and react-native-localize now support typed Expo plugin configuration. This makes it possible to write plugin config in a type-safe way within Expo projects, helping catch configuration mistakes before they become problems.
react-native-bootsplash and react-native-localize now have typed Expo plugin configs. - github.com/zoontek/react-nativ… - github.com/zoontek/react-nativ…
React Native Shine: A GPU Shader Effects Library Powered by WebGPU#
Software Mansion has announced React Native Shine — a library that leverages TypeGPU and WebGPU to bring interactive shader effects to React Native apps. It offers a familiar API similar to the standard Image component and is built with production use in mind.
React Native Shine ✨ - a fast & efficient way to add interactive GPU-based shader effects to your React Native apps using TypeGPU and WebGPU. What do we think? github.com/software-mansion-la… twitter.com/wojtus_7/status/20…
NativeScript Node-API Successfully Running Inside an Expo macOS App#
It’s been reported that NativeScript Node-API has been successfully run inside an Expo macOS app for the first time. This opens the door to full JavaScript access to the macOS SDK directly from React Native / Expo apps.
I just got NativeScript Node-API working inside an Expo macOS app for the first time! 🥳 Write Expo / React Native apps for macOS, with full access to the macOS SDK via JavaScript! Coded this demo together with @jmeistrich on the train back to Tokyo 🚄
react-native-quick-crypto Achieves Full Compatibility with Node.js Crypto API#
react-native-quick-crypto has achieved full compatibility with the Node.js Crypto API. React Native apps can now access a much broader range of cryptographic features at near-native performance.
Today, react-native-quick-crypto got full NodeJS Crypto API compatibility: github.com/margelo/react-nativ…
Radon AI Brings AI Agent Assistance to React Native App Development#
Software Mansion introduced Radon AI — a tool that gives AI agents direct access to React Native internals, enabling them to understand what’s happening inside your app in real time and assist with development. A 14-day trial is available.
Build React Native apps easier with Radon AI 🤖 Radon AI gives your Agent direct access to ALL React Native. This means your agent always knows exactly what’s happening under the hood, reacting instantly without waiting for your input. 🚀 There's a 14-day trial period for
One More Thing#
The “zero re-layouts” number from KeyboardChatScrollView hit hardest for me this week. The quieter the problem, the bigger the impact when it finally gets solved.

