This Week In React #83: Remix 1.0, React Test Selector, Tamagui, R3f, Next.js, PopperJS, Bun, TypeScript, Lighthouse, Cloudflare...
React
StackBlitz & CodeSandbox playgrounds
React-Three-Fiber is also cross-platform, and React-Native support is coming in v8, as seen in this Paul Henschel's demo.
Extras:
The React team clarifies: Server Components won't be in v18.0 but will be released later, in a minor version.
How To Prevent Unnecessary React State Update Re-renders: highlights 2 interesting techniques to avoid useless re-renders: using functional setState and avoiding un-necessary state object/array shallow copies.
Next.js: proposal to offload third-party scripts in a Web Worker to improve page load time, possibly using the existingPartytown lib
🎥 What's Next.js #1: first video of a new series of online meetups about the cutting edge things in the Next.js ecosystem. This one discuss in particular the usage of Bun, the new bundler in Zig and compatible with Next.js.
🎥 "Should you learn JavaScript before React?" by Lee Robinson
Partners
React-Native Weekly: stay up-to-date React-Native core updates
TypeScript Weekly: the best TypeScript links every week, right in your inbox.
ES.next News: learn about the latest in JavaScript and cross-platform tools
Tailwind Weekly: all things Tailwind CSS, new issue every Saturday
Start React Native: learn everything about gestures and animations with William Candillon
G2i: pre-vetted remote React & React-Native developers you can trust on contract or full-time basis
Infinite Red: US React-Native experts making your idea a reality
React-Native
This lib is compatible with Server-Side-Rendering, and its website is built with Next.js.
We'll have to figure out how this new solution differs from Dripsy, trying to solve a similar problem.
Extras:
react-native-performance: new Flipper plugin to monitor React-Native FPS, inspired by Lighthouse (Android only for now).
Don’t use the wrong JDK for React Native if you’re using an M1 Mac: Jamon advise to use Azul JDK to compile your Android apps 2x faster.
PopperJS v3 is platform-agnostic and will support React-Native
New Skia demo: using a 2d physics engine
An Expo app under 5mb: this is now achievable thanks to Expo Application Services
"we now have 1200+ React Native screens in the Facebook app"
Other
This article gives a good overview of the current trends aiming to improve the performance of our Single-Page-Applications (and avoid the "uncanny valley") and leading to the arrival of innovations in the React ecosystem (server components, SSR streaming, progressive hydration ...).
Extras:
Lighthouse 9.0: with user flows support, allowing to get insights on interactions: a convenient feature for SPAs.
Cloudflare Pages Goes Full Stack: Cloudflare catches up on DX: it's now possible to deploy serverless Cloudflare Workers alongside your static deployment with a simple
git push
TypeScript 4.5: as planned, ES modules support is delayed. But this release still has a few interesting features such as
Awaited
and tail-recursion on conditional typesAstro 0.21: using Vite, new Go compiler, and a MDX-inspired system to mix Markdown + interactive components
Svelte Cubed: Rich Harris open-sourced an experimental lib to use Three.JS with Svelte
Introducing “Shadow Palette Generator”: new tool by Josh Comeau to help you create realistic shadows
GitHub’s commitment to npm ecosystem security: 2FA becomes mandatory for widely used packages
Proposals.es: convenient to navigate TC39 ES proposals