π¨ #235: React Router, createStore, SuspenseList, Transition Indicator, Compiler, RenderHooks, Waku, React-Scan | Expo, Lava, Fortnite, Skia, AI, Lynx | TC39, using, Zod, Node, Deno
Hi everyone!
This week, we're delighted to finally have a preview of React Server Components support in React Router. I've also found some very interesting PRs on the React repo, and give you a glimpse of what could be coming soon!
The React Native ecosystem is surprisingly calm, but no doubt they keep everything secret for App.js Conf next week!
By the way, I would really appreciate your support. Now that I'm automatically removing cold subscribers, the newsletter is decreasing over time π . Any retweet, like, engagement, or testimonial really helps me! Please convince your friends to subscribe β€οΈ
As always, thanks for supporting us on your favorite platform:
- π¦ Bluesky
- βοΈ X / Twitter
- π LinkedIn
- π½ Reddit
Ne manque pas le prochain email !

πΈ Sponsorβ
Cut React Code Review Time & Bugs in Half
Code reviews are critical but time-consuming. CodeRabbit acts as your AI co-pilot, providing instant Code review commentsΒ and potential impacts of every pull request.Β
Beyond just flagging issues, CodeRabbit provides one-click fix suggestions and lets you define custom code quality rules using AST Grep patterns, catching subtle issues that traditional static analysis tools might miss.
CodeRabbit has so far reviewed more than 5 million PRs, installed on 1 million repositories, and used by 50 thousandΒ Open-source projects.Β CodeRabbit is free for all open-source repo's. Get started today!

βοΈ Reactβ
The React Router team unveiled a preview of React Server Components support using the Parcel bundler. Stable support is blocked until Vite officially supports RSCs, but the good news is that React Router is becoming more framework-agnostic, and they expect to support other bundlers in the future with minimal effort.
The feature is designed to be both incrementally adoptable by returning JSX in loaders/actions, but also to feel good on new greenfield projects looking to go all-in with Server Component Routes, βuse clientβ
and βuse serverβ
directives. They also explain how to solve the N+1 query problem in RSCs, inspired by GraphQL/DataLoader.

Looks like the Render Props pattern is making a comeback, with 2 new projects proposing to expose React core hooks in a render callback. This is a convenient trick in some situations, allowing you to "inline" a component while still respecting the rules of hooks, but it does not really solve any problem that canβt be solved by extracting a custom component. An interesting pattern to use sparingly.

- πΈ Product for Engineers - What engineers get wrong about communication
- π React Core PR -
createStore()
skeleton API: Initial scaffolding work to implement the Concurrent Stores feature mentioned in the latest React Labs update. Thereβs no implementation yet, but I still find it interesting to check the signature/types of this upcoming API that should support both ad-hoc state updates and the reducer/actions pattern. What strikes me the most is that you canβt access the store value directly, apart from using theuse(store)
API, and this totally makes sense in a concurrent world. Remember, this is a work in progress, and things may change. - π React Core PRs -
<SuspenseList>
being actively worked on: Itβs been a while since we last heard of this upcoming component that we thought would be in React 18. It allows to coordinate Suspense boundaries and control their βreveal orderβ (forwards/backwards/together). - π React Core PR - Transition indicator +
onDefaultTransitionIndicator
API: A feature being worked on should allow giving user feedback while React transitions are in progress. The default React-DOM implementation should show a native browser spinner, but itβs possible to opt out or provide a custom feedback. - π SWC PR - Initialize
@swc/react-compiler
: A new package to integrate the React Compiler for all SWC-based projects is coming. It will still use Babel under the hood (details), but itβs possible to optimize by only running it on relevant files (see what Next.js is doing), potentially using parallelization. - π Next.js PR - Initial Segment Explorer devtool: The Next.js team started working on a tool to help you visualize parallel and interception route segments.
- π Next.js Race Condition to Cache Poisoning - CVE-2025-32421: Low-severity Pages Router vulnerability, already patched.
- π£ Appwrite Sites: The open-source Vercel alternative: The AppWrite cloud platform can now deploy full-stack React meta-frameworks. It positions itself as a direct Vercel competitor, although there are differences (containers vs serverless). Itβs a paid cloud product, but you can also self-host it for free.
- π Concurrent Rendering: Free interactive lesson on React transitions from the ui.dev course.
- π Correctly infers from initial props: You donβt need to explicitly type your context value and can leverage type inference instead.
- π Making Next.js Navigation Fast af: Using React Router within your Next.js app works, but I doubt itβs a good idea, doesnβt permit you to use RSCs, and is likely to cause trouble if you use different routers on different pages.
- π Mastering Focus Management in React with
flushSync
: By default, React uses batching and doesnβt flush state updates immediately to the DOM, and you can opt out of this behavior when needed. - π Preserving and Resetting State in React: Explains why conditionally wrapping a component may make it reset its state.
- π Just F***ing Use React: Entertaining read, also exists in a less profane Just Use React variant.
- π The Past and Future of Render Optimization with React Context
- πΈ Full-Stack Upgrade β Build real apps with auth, orgs & file uploads: The Road to Next is your next step as a full-stack React developer.
- π¦ Waku 0.23 - Fine-grained component render modes: Makes it possible to statically pre-render parts of a dynamic page. I find the API a bit confusing, but the idea looks cool and simpler than Next.js Partial Pre-Rendering.
- π¦ React-Scan 0.3.4 - Scan for React performance issues: A release that takes the opportunity to announce upcoming features and the availability of the extension on the Chrome store.
- π¦ React Aria - May 19 Release
- π¦ React-Admin - May 2025 Update - 5.7 & 5.8
- π¦ StyleX 0.13 - New
defineConsts
andpositionTry
APIs - π¦ Shopify Hydrogen 2025.05 - Upgrades to React Router 7
- π₯ Theo - React Is the last framework: Probably a quite controversial point of view that React runtime/syntax is less likely to change now (mainly due to AI). Innovation is moving an abstraction layer above with the React Compiler.
- π₯ Alem Tuzlak - Server Componets (RSC) in react-router are... actually good?
- ποΈ Syntax 902 - Fullstack Cloudflare with React and Vite - RedwoodSDK with Peter Pistorius
- ποΈ Front-end Fire 95 -TanStack DB & The Rise of the Tannerverse
Ne manque pas le prochain email !

πΈ Sponsorβ
Add loyalty logic to your product β with just one API.
Why build loyalty from scratch when you can plug it in with Dynamo?
Dynamo is the API-first headless loyalty engine used by product teams at leading fintech and consumer apps to embed rewards, tiers, and behavior-based engagement β without writing it all from zero.
With 250+ cloud data integrations, a React and React Native SDK, plus a clean sandbox trial, you can improve your retention now in days not months.
β Launch demo and get free sandbox access now.

π± React-Nativeβ
- πΈ Radon IDE β All-in-one tool for React Native & Expo development. Meet the Radon IDE team next week at App.js Conf!
- π¦ Fortnite is back on the App Store in the U.S. on iPhones and iPads... and on the Epic Games Store and AltStore in the E.U!: Major news for the whole mobile industry, Apple is finally complying with the court ruling, and allows mobile apps to use alternative web-based payment methods to bypass the 30% fee on in-app purchases.
- π¦ Airbnb Lava preview: Not open source yet, but Airbnb invented a new lightweight media format to embed animations and micro-interaction icons across platforms. A possible successor of Lottie?
- π Real-time audio processing with Expo and native code
- π Expo + IoT: Device provisioning with HTTPS via WiFi
- π How to Run LLMs on-device in React Native with Vercel AI SDK
- π¦ Lynx 3.2 - Testing Library, new CSS features, improve microtasks and console support
- π¦ React Native Skia 2.0.1 - Wide gamut colors on iOS
- π₯ Beto - How to upgrade from Expo SDK 52 to 53
- π₯ Simon Grimm - React Native Drawer Navigation with Expo Router
- ποΈ Rocket Ship 69 - Expo Router v5, Skia WebGPU, App Updates & Galaxies Lifetime
- ποΈ React Native Radio 332 - Codemagic + React Native with Martin Remmelgas

π Otherβ
- π TC39 - Agenda for the 108th meeting: Next week, another set of interesting proposals for JS could progress, some of them could become part of the standard:
using
keyword,Error.isError()
. - π JavaScript's New Superpower: Explicit Resource Management: Describes the
using
keyword mentioned above, already available in Chrome, and more importantly, in Node 24. - π The Future of MCP is GraphQL: Apollo announcing their MCP server, explaining the alignment between GraphQL and AI needs.
- π I think the ergonomics of generators is growing on me
- π Reports of Deno's Demise Have Been Greatly Exaggerated
- π¦ Node 22.16 -
node.config.json
support (experimental) - π¦ Zod 4.0 - faster, slimmer, more tsc-efficient, new Zod Mini export, localization and more
- π¦ Remotion Media Parser - Universal lib based on WebCodecs to parse/decode/encode videos

π€ Funβ
See ya! π
Ne manque pas le prochain email !