Rock is Open-Source, RN 0.79, Expo 53, Offline AI, Faster List

Authors
Michał Pierzchala
Principal Engineer
@
Callstack

Hey!

It’s Michał again. April was full of announcements and interesting explorations for Callstack’s R&D, React web team and React Native community. Let’s get right to the most notable updates that you definitely don’t want to miss.

callstack_ruc_05.09.24_fot_jerzywypych_dg-52

Community Highlights

Before we get to Callstack updates, take a look at some key updates in the React Universe from the last month:

  • React Native 0.79: 3x faster Metro startup, faster Android app startup (TTI), better Swift compatibility for native modules, removal of remote JS debugging, JSC moving to community package (which we covered in the last issue as it was done by Oskar), aliases in package.json, and more.
  • Expo SDK 53: It’s finally there with React Native 0.79, React 19, edge-to-edge by default on Android, improved background tasks with expo-background-task, debug builds on TestFlight (!), faster Expo Module builds on Android, and more.
  • FlashList 2.0: The rewrite of Shopify’s list to new architecture is heading to an end with the 2.0-alpha release. It doesn’t require size estimates anymore, and it’s faster.
  • Legend List 1.0: Another fast, community-driven, JS-based list implementation by Jay Meistrich is now stable, with a mostly compatible API to FlatList. Time to give it a go.
  • Shopify Mobile Bridge: Making WebViews Feel Native: Really neat UX considerations when working with WebView, so that the content inside feels more native. It very well aligns with our experience in this field.
  • React Labs: View Transitions, Activity, and more: The React team introduces two new experimental features: View Transitions for animations and Activity for hiding/showing UI and pre-rendering at lower priority. Additional updates include features currently in development: React Performance Tracks in DevTools, Compiler IDE Extension, Automatic Effect Dependencies with React Compiler, Fragment Refs, and Concurrent Stores for libraries.

Callstack Incubator Highlights

React Native AI

There’s a new way to run large language models (LLMs) on devices and it’s called react-native-ai. It’s a new project led by Szymon and Kewin that promises offline AI capabilities  with Vercel SDK API that you probably already know from the web. You can, of course, download your favorite models from HuggingFace at runtime. Give it a try and help us explore the limits of this approach.

Introducing react-native-ai 🔥

Run LLMs on-device with React Native and Vercel @aisdk 😍

$ 𝚗𝚙𝚖 𝚒𝚗𝚜𝚝𝚊𝚕𝚕 𝚛𝚎𝚊𝚌𝚝-𝚗𝚊𝚝𝚒𝚟𝚎-𝚊𝚒 pic.twitter.com/MUGHjXx5vf

— Szymon Rybczak (@SzymonRybczak) April 30, 2025

Rock is open-source

The time has come! Two months after announcing that we’re building a new framework, you can freely access it through NPM and GitHub, because it’s open-source. Give Rock a star if you like new frameworks or currently use React Native Community CLI (it takes 10 minutes to upgrade and open your project to new goodies—such as remote build cache—without much effort).

React Native Enterprise Framework is now open source! 🚀

We've built it as a drop-in replacement for Community CLI and for those who want to incrementally adopt React Native.

✨Features:
▪️Reusable cloud builds
▪️Novel Brownfield approach
▪️Self-hosted on your infrastructure pic.twitter.com/g9pWX8EgQZ

— Michał Pierzchała (@thymikee) April 25, 2025

React Native Brownfield v1

The library for integrating React Native into existing iOS and Android apps,  react-native-brownfield got a huge boost from Oskar and just shipped v1 with new architecture, building on top of better and simpler API and supporting SwiftUI and Jetpack Compose. You can also use it when packaging your React Native app as a framework for improved DX, which is supported through Rock brownfield plugins.

React Native Brownfield 1.0.0 is out! 🚀

- Better API 🔧
- Supports packaging as a framework 📦
- Supports SwiftUI, Jetpack Compose ✨

Check out the sample integration below ⬇️ pic.twitter.com/7Ju0SyewAo

— Oskar Kwaśniewski (@o_kwasniewski) April 16, 2025

React Native Paper is back!

With over 200k weekly downloads, react-native-paper is one of the most used UI library in the React Native Community. For quite some time, we’ve held it in maintenance mode, without much active development. We listened to the latest feedback on the library however, went back to the drawing board, and decided it’s time to give the library a breath of fresh air, as we have some exciting ideas ahead of it. Luke is back at work fixing bugs and prepping for v6 release. Stay tuned!

🚀 Just published 3 new releases of the @rn_paper – each includes various bug fixes.

👷This is part of a broader effort to refresh the project and catch up on overdue updates.

Thanks for your patience – more to come soon! 💪 pic.twitter.com/8368f9VwW9

— Luke Walczak (@_happiryu) April 24, 2025

Experimenting with CSS in React Native

Some say competition drives progress and innovation. And we believe in that. When Mario heard about Lynx supporting CSS, having a few attempts at rewriting Yoga already behind, he went into his favorite C++ rabbit hole to see if we could have CSS in React Native. Results? It seems we could! This is an early, but promising, experiment, and we’ll certainly explore this space in the upcoming months.

Something is impossible, until somebody does it...

CSS support in React Native 🤫 pic.twitter.com/XgiT6Qyppo

— Mariusz Pasiński (@mani3xis) April 17, 2025

Module Federation in Metro

Jakub was clearly fed up with Module Federation being only available in Re.Pack and, guess what, he’s now working on making it available for every React Native app without migrating to different bundlers. That’s right, Metro is going to get MF support really soon! We’re excited to collaborate with the Metro core team. And kudos to Zephyr Cloud sponsoring this effort 🙌

Very excited to announce that we managed to get Module Federation working with @MetroBundler 🚀

More info & repo below 👇 pic.twitter.com/XaGknqg23e

— Jakub Romańczyk (@_jbroma) April 17, 2025

Self-hosted over-the-air updates

With CodePush being sun set at the end of March, there’s an explosion of alternative services that want to get a piece of the OTA cake. Szymon recently gave a try to hot-updater—a self-hosted OTA tool, and it was a surprisingly pleasant experience. Moreover, the maintainer added support to Rock the second day it was open-sourced. We’ll continue to watch this project.

wow I just managed to setup OTA updates for React Native app in 15 minutes!! with beautiful CLI that walked me through all the steps, the best part: it's self-hosted!! 🔥🔥 pic.twitter.com/H15Pwh63fK

— Szymon Rybczak (@SzymonRybczak) April 17, 2025

Blog

Latest article on our blog

  • Powering Native Apps with React Native Brownfield by Burak Güner: See React Native Brownfield v1 in action, where its new API and packaging support help add a React Native app to an existing iOS and Android project.
  • Profiling React Native Internals with Tracy by Mariusz Pasiński: Another exploration of low-level C++ profiling with Tracy; this time it’s about going through React Native internals step-by-step to assess CPU usage and memory allocations using this powerful tool.

Podcast, webinars & talks

  • React Universe On Air #50: Exploring TanStack Ecosystem with Tanner Linsley: From React Query to TanStack Start—Tanner Linsley walks through the evolution of TanStack’s headless libraries and explains the thinking behind full-stack client-first architecture.
  • Why You Need Rock with Mike Grabowski and Michał Pierzchała: Get to know our recently open-sourced framework built for large teams and projects that helps tackle slow CI builds, complex native code, and platform fragmentation with scalable, cloud-agnostic solutions.
  • Master JavaScript Performance in React Native (Part 1) with Mike Grabowski and Szymon Chmal: Learn how to spot real JS performance bottlenecks, avoid common pitfalls, and keep your UI smooth with yielding and async patterns.
  • How to Make Your React (Native) App Feel Native by Oskar Kwaśniewski: From platform-specific gestures to UX nuance, get a practical breakdown of how to build apps that feel right on iOS, Android, VisionOS, and more.
  • I Built a File-Based Router for React Native by Szymon Chmal: How a weekend hack led to a custom file router with dynamic imports, suspense handling, and Next.js vibes—all running natively on React Native.
  • Bring Your Favorite Language to React Native by Robert Pasiński: Discover PolyGen—a WebAssembly-based toolkit for embedding Rust, Go, COBOL (yes, really) and more into React Native apps, no TurboModules required.

Coming Soon

  • NodeAPI: We keep working in this area together with our tech partners and have some exciting updates to share in the upcoming months,
  • OpenTelemetry: Adam is working on the react-native-open-telemetry in the open, and we’re still interested in this space. Feel free to give it a star and watch what’s coming.

REACT UNIVERSE CONF 2025 UPDATE

Big momentum on the React Universe front:

  • Speaker lineup just got even stronger. Welcome Violina Popova (ClipMyHorse.TV), Vladimir Morozov & Khalef Hosany (Microsoft), Kræn Hansen (MongoDB), and Dr. Kubilay Ahmet Küçük (Oxford University).
  • Diversity & Volunteer applications are now open! Want to attend or help out? Apply at reactuniverseconf.com/diversity
  • Regular Access tickets are on sale—grab yours before prices go up. Group coming? Use RUC25Teams for 15% off 4+ tickets.
  • Performance Workshops are selling fast. Tere are just a few seats lets, so don’t wait too long before saving your spot at reactuniverseconf.com/workshops-2025

That’s it for April’s updates. Stay tuned for what’s coming in May, because we’re already working on some events and content pieces that we couldn’t mention in this newsletter edition yet.

Cheers,

Michał

Insights

Your next read or watch starts here

Building a Software Factory: Write Specs an Agent Can Build From — cover

Nov 6Article

Building a Software Factory: Write Specs an Agent Can Build From

Learn how to research requirements, resolve open decisions, and write testable specs that AI coding agents can implement without the planning conversation.

 Large-Scale Migrations With Coding Agents: Planning, Verification, and Rollback — cover

Nov 4Article

Large-Scale Migrations With Coding Agents: Planning, Verification, and Rollback

Plan codebase migrations with coding agents using reviewable requirements, verification checks, staged rollouts, and defined rollback criteria.

Conversational Banking: From Customer Questions to Authorized Actions — cover

Nov 2Article

Conversational Banking: From Customer Questions to Authorized Actions

Explore conversational banking architecture through a card-dispute example, covering tool access, authorization, execution, observability, and human handoff.

How AI Agents Can Cut Manual QA by 30% — cover

Oct 30Article

How AI Agents Can Cut Manual QA by 30%

Explore an agentic QA workflow targeting 30% less manual effort across mobile, web, and TV, with test selection, failure triage, and validation.

Building a Software Factory: The Night My Agents Waited for Me — cover

Oct 28Article

Building a Software Factory: The Night My Agents Waited for Me

Learn how permissions, review limits, and missing product decisions stalled two overnight coding agent runs, and how their maintainer revised the workflow.

Your AI Coding Agent Still Needs an Architecture — cover

Oct 22Article

Your AI Coding Agent Still Needs an Architecture

Use explicit contracts, behavior tests, and dependency checks to guide AI coding agents and review their changes through a TypeScript favorites example.

cover

Oct 15Live Stream

Who Left the Agents Running? React Native Software Factories

Join Kewin Wereszczyński and Szymon Chmal to explore what can go wrong in a React Native software factory overnight and the controls that keep agents on track.

cover

Oct 14Podcast

When Coding Gets Faster, What Breaks Next?

Matt Hargett explains how AI moves bottlenecks across testing, deployment, infrastructure, support, and the rest of software delivery.

cover

Oct 13Podcast

MCP and Supervisor Agents in eBay's Monitoring Workflow With Leonel Candido da Silva

Leonel Candido da Silva explains eBay's agentic monitoring workflow: specialized agents, MCP, PagerDuty reports, and plans to learn from past incidents.

cover

Oct 12Podcast

AI Agent Observability With Ivana Huckova and Sven Großmann

Grafana's Ivana Huckova and Sven Großmann discuss AI agent observability, coding-agent costs, PR analytics, secret redaction, and local guardrails.

cover

Oct 7Talk

Automating Mobile QA with Cloud Agents

Michał Pierzchała shows how cloud-based QA agents can test real iOS and Android user flows and bring screenshots, recordings, and logs into pull requests.

cover

Oct 1Live Stream

Can Jev Make AI Agent Decisions Faster?

Explore Jev with Kewin Wereszczyński and Szymon Chmal: how it works, its approach to faster agent decisions, and possible local alternatives.

cover

Mar 19Tutorial

The Hard Way vs. The React Native AI SDK Way: Stop Writing Custom Modules for Every Model

Learn how React Native AI uses a unified provider model to switch between cloud and on-device LLMs without rewriting application logic, enabling reliable AI experiences online and offline.

cover

Mar 12Tutorial

Build Smarter Apps: Tool Calling & AI Orchestration Explained

Learn how on-device models in React Native can call tools, interact with external APIs, and return structured outputs you can use directly in application logic.

cover

Mar 5Tutorial

MLC LLM + React Native: On-Device AI Without the Pain

Learn how to run third-party on-device LLMs in React Native using MLC LLM. Choose your models, run them efficiently across platforms, and keep a unified JavaScript API with React Native AI.

cover

Feb 24Tutorial

Intelligent Fallbacks with Apple Intelligence in React Native

Learn how to use Apple’s built-in Foundation Models in React Native apps, reduce memory usage, and enable fast, fully on-device AI with React Native AI Apple.

cover

Feb 10Tutorial

What Is the React Native AI SDK? A Complete Intro & Quickstart

Learn why on-device AI matters for React Native apps, how local LLMs behave offline, and what problems React Native AI is designed to solve from day one.

cover

Jan 29Tutorial

Implementing an Android TurboModule with Kotlin

Learn how to implement a React Native TurboModule on Android, from the TypeScript spec and Codegen to the Kotlin implementation and package registration.

cover

Jan 19Tutorial

Working with Different Threads in Swift TurboModules

Learn how JavaScript, native module, background, and main threads interact in React Native TurboModules, and how to use GCD queues to run async work safely in Swift.

cover

Jan 9Tutorial

How to Add Type-Safe Constants to Swift TurboModules

Learn how to expose typed, immutable constants from a Swift TurboModule using Codegen, and get full end-to-end type safety between native and JavaScript.

cover

Dec 30Tutorial

Adding Event Emitters to Your TurboModule in Swift

Learn how to emit native events from a Swift TurboModule and subscribe to them in JavaScript, including proper memory management and Codegen integration.

cover

Dec 22Tutorial

Writing Your First TurboModule in Swift

Learn how to build a fully working TurboModule in Swift, integrate it with Codegen, and bridge it through Objective‑C inside an Expo app.