π¨ #183: Vercel Edge, React Native 0.74 + IDE, refs, patching fetch(), Remix Single Fetch, RSCs, Signals, Redwood, Zustand Slices, XState, VisionCamera 4, NewArch, VisionOS...
Hi everyone!
This week React Native takes the spotlight! But there are also interesting news from Vercel and PRs to take a look at from the React core team.
Earlier this week, I was at React/RN Connection conferences in Paris. It was great to meet some of you there!
The Parisian party is not over. After many years, the great dotJS conference is back in Paris on June 27. They already announced great speakers, including Mark Dalgleish, Malte Ubl, Charlie Gerard, James Q Quick, Ben Lesh... Last regular tickets available, get a 10% discount with my code "TWIR".
Due to the conf, I only had today to work on the newsletter. Thankfully my co-author Benedikt took over and did most of the work this week! π
Next week, the newsletter takes a well-deserved break. We'll be back on May 8.
π‘ Check this newsletter on Twitter - visual format π¨
To support me:
- π Recommend the newsletter to your friends: it really helps!
- πΈ Sponsor the newsletter
- 𧡠Retweet the latest Twitter thread
Don't miss the next email!
πΈ Sponsorβ
A newsletter helping build your product skills
Product for EngineersΒ is PostHogβs newsletter dedicated to helping engineers improve their product skills. Learn what questions to ask users, how to build new features users love, and the path to product market fit.
Subscribe for freeΒ to get curated advice on building great products, lessons (and mistakes) from building PostHog, and deep dives into the strategies of top startups.
βοΈ Reactβ
π¦ Vercel reverted all edge rendering back to Node.js
Vercelβs VP of Product, Lee Rob, explained on X that Vercel is βreverting all edge rendering back to Node.js.β If youβre using Vercel (and probably even if you donβt), youβll know that Vercel has pushed βedgeβ as a concept for a long time. On the one hand, edge means that compute is run near to where a user accessing a site hosted on Vercel is located. On the other hand, it also means that this compute is run on an βedge runtime,β which is built on V8 and not on Node.js. While the concept of running compute near to the end users sound appealing, the advantages quickly disappear if data needs to be loaded from a central location (which very often is the case). At the same time, development teams are often struggling to adapt workload to the limited subset of APIs available on the edge runtime. Now it seams Vercel has come to the conclusion that overall, the challenges for developers outweigh the limited benefits, and is therefore reverting to centralized Node.js runtimes. I appreciate their transparency around this! If you want more details, Theo made a video about it.
- πΈ Clerk's prebuilt UI components give you a beautiful, fully-functional user management experience in minutes. Start for free!
- π React Core PR - React 19 will not patch fetch() anymore!: the controversial
fetch()
patch to deduplicate requests in RSCs is now removed from React core. You might see it as a good thing, but keep in mind you will now need to deduplicate requests yourself manually withReact.cache
. - π React Core PR - Don't minify symbols in production builds: React 19 production builds will preserve variable/function names and should become easier to read/debug. You can still minify it yourself if you want to, but using HTTP gzip compression should be enough to compensate for the extra size.
- π React Docs PR - Add documentation for ref cleanup function: React 19 ref functions can now return a cleanup function (π¦ preview). This should also help users using string refs (removed in v19) and classes to migrate thanks to automated codemods.
- π Remix POC - Remix + Hono + Vite
- π React Summit - π³π± Amsterdam - 14-18 June - Get a 10% discount with code "TWIR". Awesome lineup including Evan Bacon, Kent C. Dodds, Theo, Tim Neutkens, Mark Erikson, Fred Schott and so many others!
- π HTML attributes vs DOM properties: A great deep dive into subtle DOM behaviors and design decisions, including how frameworks like React or Vue handle the difference. Also explains how React 19 will improve support for Web Components.
- π Redwood - Building a new docs site with RSC: Redwood is dogfooding Redwood by showing how to build a docs site with it, based on MDX and RSCs.
- π Deploy a new Remix app to Cloudflare Pages: A lot has recently changed (and improved!) about how Remix can be deployed to CF Pages. This is a good guide on the state of the art.
- π Improving INP in React and Next.js: Interaction to Next Paint has recently replaced First Input Delay (FID) as a core web vital; this post details how to optimize it.
- π Did Signals Just Land in React?: Spoiler Alert: No, they didn't. But thereβs still a way to try signals in React.
- π Vercel - Building an interactive 3D event badge with React Three Fiber
- π Getting the Current URL in Next.js Server Components
- π How to manifest streamlined authentication: AWS Cognito in a React app
- π Localized link tags for SEO in Remix
- π How Solid Made Me A Better React Developer
- π Boosting Performance with Next.js and React Server Components - A GeekyAnts Case Study
- π How to Simplify Global State Management in React Using Jotai
- π¦ Remix 2.9 - Single Fetch (unstable)
- π¦ StyleX - 0.6.1 - Typed variables, fallback values, ESLint plugin
- π¦ Hydrogen April 2024 release - Analytics preview, stable Vite support, SEO updates, full-page caching
- π¦ Zustand-Slices - Assemble slices into a single store
- π¦ Spoiled - Realistic Spoiler component for React.js
- ποΈ Off The Main Thread Podcast: Putting React In The Browser
- π₯ Jack Herrington - JS Built-in Signals In React and Svelte today!
- π₯ Ben Holmes - Vercel got it wrong: Interesting take on the βedgeβ topic by Ben Holmes, detailing Cloudflareβs approach.
Don't miss the next email!
πΈ Sponsorβ
NLUX β New React Library To Simplify Adding AI Features
NLUX is an open-source React library that makes it super simple to integrate powerful large language models (LLMs) like ChatGPT into your web app or website. With just a few lines of code, you can add conversational AI capabilities.
Key features π include:
- Build AI Chat Interfaces In Minutes - High quality conversational AI interfaces with a few lines of code.
- React Components & Hooks -
<AiChat />
for UI anduseChatAdapter
hook for easy integration. - Flexible Adapters - For
ChatGPT
,LangChain
andHuggingFace
, and an API to Create Your Own Adapter for any backend. - Synchronise UI state with AI backends in an optimal way.
- Markdown Streaming - Render LLM markdown as it's being generated.
- Zero Dependencies - Lightweight codebase.
More info, examples and documentation on nlux.dev
π± React-Nativeβ
π¦ React Native 0.74 released
This week saw the release of React Native 0.74, a major milestone for the community! The latest version makes βbridgeless modeβ the default for new projects using the New Architecture (with the next release, 0.75, the New Arch will become the default, too). Both can still be turned off if needed, but they clearly represent the future of React Native, and over the last months especially, A LOT of libraries have added support for both. But thereβs more: RN 0.74 includes Yoga 3.0. There are very few breaking changes and deprecations, but itβs still worth checking them out in the release notes.
π¦ React Native IDE is now in beta
Another exciting news this week is the closed beta for React Native IDE, developed by the team at Software Mansion. You can now sign up to get early access to the IDE. They also have a landing page up now, and the docs are publicly available for anyone curious about it.
- πΈ React Native Analytics β Omlet is a New Tool to Analyze Component Usage. See Trends to Improve Code and Boost Component Adoption.
- π¦ Right-click to inspect with access to components hierarchy and jump-to-source in the coming React Native IDE?
- π¦ Another week, another wild push from Evan Bacon: Precompiled React Native
- π App.js Conf - π΅π± KrakΓ³w - 22-24 May. Get a 10% discount with code "TWIR".
- π Sunrising New Architecture in the New Expensify App: Super cool to see a complex open-source app adapting the New Arch. A great example to look into!
- π Apple privacy manifest for React Native: Iβve mentioned the Apple Privacy Manifest requirement before; finally, a good blog post summarizes the topic.
- π Expo Blog: Save users from deleting your app with expo-quick-actions
- π Creating a React Native βCurved Bottom Barβ with Handwritten SVG
- π Exploring VisionOS Apps with React Native
- π Microsoft is retiring App Center: Hereβs what React Native developers should use instead
- π¦ React Native VisionCamera V4: Draw directly on camera frames with Skia, lots of Android bug fixes: There is a great demo showcasing what kind of stuff this enables, too!
- π¦ react-native-svg 15.2.0 adds support for RN 0.74 on New Architecture
- ποΈ RNR 294 - Goodbye, App Center!
- π Rocket Ship 39 - Award Winning Credit Card App Yonder with Henry Moulton
- π₯ The React Native Show Podcast: Coffee Talk 18 - Behind the Scenes of React Native 0.74 Release
- π₯ Simon Grimm - React Native Multiplayer with Supabase Realtime and Skia
- π₯ Oscar Franco - React Native Bridgeless Mode for Dummies
π Otherβ
- π¦ Fetch API has built-in timeout support
- π On Signal Relays
- π WebKit: Help us invent CSS Grid Level 3, aka βMasonryβ layout
- π An intro to TSConfig for JavaScript Developers
- π Vercel - Latency numbers every frontend developer should know
- π The Front End Developer/Engineer Handbook 2024 β A Guide to Modern Web Development - Free eBook
- π¦ Chrome 125 beta - CSS Anchor Positioning, CSS stepped functions, β¦
- π¦ ESLint v9.1
- π¦ Electron 30.0
π€ Funβ
See ya! π
Don't miss the next email!