This week in React

πŸ‘‰ Chat with Swyx & Sunil
πŸ‘‰ Shopify Hydrogen
πŸ‘‰ MUI v5
πŸ‘‰ React antipatterns
πŸ‘‰ useIsMounted
πŸ‘‰ useReducer
πŸ‘‰ Expo OTA
πŸ‘‰ Skia Breakout
πŸ‘‰ Reanimated Layout anim
πŸ‘‰ Colorwaver
πŸ‘‰ Smart client vs Smart server
πŸ‘‰ Rome ➑️ Rust
πŸ‘‰ Partytown
...

🧡 Details πŸ‘‡
1/ 🎧 Podcast with @swyx & @threepointone about various React-related topics



Really interesting discussion, a lot of insights/opinions:
- state machines
- Gatsby 4 vs Next.js
- why swc is a better fit for Next.js

First time I read about Hydrogen & Bun
2/ 🎦 Hydrogen by @ShopifyDevs

πŸ™‰ Slipped under my radar

CEO @tobi says React is about to reach the sweet spot for e-commerce

WIP meta-framework for Shopify
Custom hooks/comps
All-in on React server-components
Using Vite
Deploy on Oxygen platform

shopify.dev/hydrogen
3/ MUI v5.0 by @olivtassinari

Popular Material-UI lib for React rebrands to MUI

JSS ➑️ Emotion (SC option)
sx prop
Unstyled/headless comps
New product line MUI X

mui.com/blog/mui-core-…

Also interesting: share strategy to make the open-source project sustainable
4/ React anti-patterns to avoid by @IskanderSamatov

Great list of very common anti-patterns I see regularly.

Creating a React comp in render is something you might do without even knowing, even if you know it's bad πŸ˜…

isamatov.com/react-antipatt…
5/ Stop checking if your component is mounted

@MatthieuKern explains that a useIsMounted() hook is an anti-pattern documented officially on the React blog

This shouldn't be used to avoid the React warning

Proposes to use an AbortController instead

medium.com/doctolib/react…
6/ Use useReducer hook like a pro by @PierreOuannes

A deep dive on the useReducer hook

Introducing the basics
Explains when to use it over useState
Compare with Redux

devtrium.com/posts/how-to-u…

Using form state as examples
7/ Gatsby 4 on Netlify by @ascorbic

@GatsbyJS 4 released new features recently: server-side-rendering & deferred static generation

I predicted last week @Netlify would support those new features, but it was already the case πŸ˜†

netlify.com/blog/2021/09/1…
8/ OTA updates with expo-updates in React Native

@jamonholmgren shows how to install expo-updates on a non-Expo React-Native app, including the native side

For some cultural reason most non-Expo apps use CodePush, but @expo OTA remains a valid choice

shift.infinite.red/how-to-impleme…
9/ Breakout demo using Skia on React-Native by @chrfalch & @wcandillon

Why this matters?

"
Flutter renders everything with Skia -
We’re creating a view in React Native that lets you decide when to use Skia
"

10/ The Colorwaver app by @mrousavy is now published on the Google / Apple stores

github.com/mrousavy/Color…

Creates a color palette from camera in real-time

Nice demo / use-case showcasing the power of JSI and RN Vision Camera lib, worth testing it

11/ 🎦 JSI Explained by @ospfranco



Series of videos to use JSI for JS/native communication in your React-Native modules

Looks quite technical πŸ˜…
Hopefully, Oscar also provides C++ for JS devs videos πŸ˜†
Great content for new architecture early adopters
12/ Reanimated 2.3 first beta by @swmansion

The new layout animations are not too far away

Exports new pre-defined layout transitions

13/ Why do Webdevs keep trying to kill REST?

@swyx reflects on the REST vs GraphQL debate and realize it's more about Smart Clients vs Servers

Nice overview of the ecosystem

Explains tradeoffs: UX, DX, perf, security, bandwidth, type-safety...

swyx.io/client-server-…
14/ The Rome frontend toolchain will be written in Rust πŸ¦€

@buildsghost explains the team is confident to be productive in Rust

Also migrates from AST to a Concrete-Syntax-Tree
Allows parsing invalid/incomplete programs + reconstruct original source

rome.tools/blog/2021/09/2…
15/ Partytown: Run Third-Party Scripts From a Web Worker

Third-party scripts can significantly slow down your script

@adamdbradley propose to move that load to worker, using Proxy and sync XHR to allow worker to communicate synchronously with the DOM

dev.to/adamdbradley/i…
16/ CSS for JavaScript Developers

@JoshWComeau officially launch his next-generation, very interactive course he's working on for over a year.

Built on top of a custom course platform he created.



Great story behind the scene: failory.com/interview/css-…
🎬 THREAD END!

Follow @sebastienlorber for the next threads!

Going to turn these threads into emails soon (October).

βœ‰οΈ Pre-subscribe here: getrevue.co/profile/thiswe…

❀️ Like this thread 🧡 ?
πŸ™ Please Retweet πŸ™
πŸ‘‡ Follow the link πŸ‘‡

Previous editions?

Keep reading πŸ‘‡

β€’ β€’ β€’

Missing some Tweet in this thread? You can try to force a refresh
γ€€

Keep Current with Sebastien Lorber πŸ‡«πŸ‡· πŸ¦–

Sebastien Lorber πŸ‡«πŸ‡· πŸ¦– Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @sebastienlorber

21 Sep
This week in React

πŸ‘‰ React 18 updates
πŸ‘‰ Gatsby 4
πŸ‘‰ Context
πŸ‘‰ FileSystem routing
πŸ‘‰ Shadows
πŸ‘‰ React & RN history flashback
πŸ‘‰ Next.js & Vercel
πŸ‘‰ State Management
πŸ‘‰ Custom hooks readability
πŸ‘‰ React Native everywhere
πŸ‘‰ React Native windows
πŸ‘‰ Corepack
...

🧡 Details πŸ‘‡
1/ @dan_abramov shared a long React 18 update, mostly for course creators:

github.com/reactwg/react-…

Some APIs are stable. There's still a good amount of work left

We shouldn't extrapolate the Big Picture vision too much for now

React 18 is not only for FB scale apps
2/ @gatsbyjs 4 introduced by @schaudustin

v4.gatsbyjs.com/gatsby-4/

- SSR
- deferred static generation
- parallel query running

New exciting features, and should close the gap with Next.js in terms of feature parity.

I bet @netlify will support Gatsby SSR/DSG soon 🀣
Read 27 tweets
23 Aug
This week in React

πŸ‘‰ Scheduling Profiler
πŸ‘‰ Next.js 11.1
πŸ‘‰ Split components
πŸ‘‰ "context flag" anti-pattern virus
πŸ‘‰ Dynamic forms with visitor
πŸ‘‰ TS Unions with Destructuring
πŸ‘‰ React Native 0.65 + plans
πŸ‘‰ React Navigation 6.0
πŸ‘‰ Portals + document.body
...

🧡 Details πŸ‘‡
React has a new Scheduling Profiler, presented by @brian_d_vaughn

This should help understand better what React is working on, in a concurrent world with features such as Suspense, transitions, offscreen, lazy...

Pro-active & also hint suggestions

github.com/reactwg/react-…
Next.js 11.1 released by @vercel team

nextjs.org/blog/next-11-1

They keep improving DX and perf.
In particular, swc integration and transforms rewritten in Rust.

Experimental ES modules support (turned on by default in next Next 😏)

Next Image improvements
Read 15 tweets
14 Jun
This week in React

πŸ‘‰ React 18 links:
- Plan for React 18
- Working Group
- Intro
- Story
- Now what?
- With TS?
- TL.DR Video

πŸ‘‰ Redux Toolkit Query
πŸ‘‰ Don't overabstract comps
πŸ‘‰ React-Native 0.65 RC
πŸ‘‰ Reanimated 2.3 layout animations
πŸ‘‰ Astro
πŸ‘‰ Vue 3.1
πŸ‘‰ ..

🧡 Details πŸ‘‡
The @reactjs team published a new post

The Plan For React 18:
- first alpha published
- mention available features
- introducing the working group
- gradual adoption strategy
- stable release expected in a few months

reactjs.org/blog/2021/06/0…
The React 18 working group is a GitHub repo containing Read-only discussions (unless you are invited to contribute).

Already contains a lot of new useful information to process

github.com/reactwg/react-…
Read 16 tweets
17 May
This week in React

πŸ‘‰ Docusaurus 2 Beta
πŸ‘‰ Chose React over Vue
πŸ‘‰ (un)controlled inputs
πŸ‘‰ Eliminate problems
πŸ‘‰ Recoil 0.3
πŸ‘‰ Coinbase -> React Native
πŸ‘‰ Stripe-React-Native
πŸ‘‰ Hermes on iOS
πŸ‘‰ Babel drama
πŸ‘‰ TypeScript 4.3 RC
πŸ‘‰ TS 7 sources of unsoundness
...

🧡 Details πŸ‘‡
We released the @docusaurus v2 beta!
It's easier than ever to create a doc website!

v1 feature parity is here with i18n, and core features are stable enough!

docusaurus.io/blog/2021/05/1…

Check our best documentation websites here:
docusaurus.io/showcase?tags=…
Bill gives good reasons why he prefers React over Vue here:
- TS compatibility, JSX is just JavaScript
- Functional purity

javascript.plainenglish.io/why-i-finally-…
Read 17 tweets
3 May
This week in React

πŸ‘‰ Remix v1 beta
πŸ‘‰ Next.js 10.2
πŸ‘‰ Redux 4.1
πŸ‘‰ Babel 7.14
πŸ‘‰ Safari 14.1
πŸ‘‰ Suspense is killing me
πŸ‘‰ Key prop
πŸ‘‰ Advanced Framer Motion
πŸ‘‰ Design system: Stitches & Radix
πŸ‘‰ Airtable Flow ➑️ TS
πŸ‘‰ Inspx
πŸ‘‰ Expo + Next.js
πŸ‘‰ Mighty
...

🧡🧡🧡 Details πŸ‘‡πŸ‘‡πŸ‘‡
Remix v1 first beta!

The React meta-framework built by @mjackson & @ryanflorence launched as a 1h30 Youtube stream:

The @vercel team is working hard to improve the Next.js DX even more.

10.2 release improves startup time, hot reload, and many other things.

The Webpack 5 rollout has started for simpler Next.js sites and should also improve rebuild times significantly

nextjs.org/blog/next-10-2
Read 20 tweets
12 Apr
This week in React

πŸ‘‰ React-Hook-Form 7
πŸ‘‰ React-UX-Form
πŸ‘‰ Dumi
πŸ‘‰ Figma-To-React
πŸ‘‰ Recoil 0.2
πŸ‘‰ Hermes Intl + OTA
πŸ‘‰ Nextgen buildtools
πŸ‘‰ Bundless
πŸ‘‰ Microsite
πŸ‘‰ Let ➑️ Const
πŸ‘‰ How to test UI
πŸ‘‰ XState Catalogue
πŸ‘‰ Vue 3 ❌ IE11
πŸ‘‰ DevTools ➑️ TS

🧡🧡🧡 Details πŸ‘‡πŸ‘‡πŸ‘‡
React-Hook-Form v7 was released by @bluebill1049

react-hook-form.com/migrate-v6-to-…

Most exciting thing is probably leveraging TS 4.1 template literal types and being able to type-check the form against field-name typos!
New React-UX-Form library by @zoontek

Also based on a subscription model and per-field validation (like React-Hook-Form), also using an interesting "validation strategy" concept.

Compat with React and React-Native.

github.com/swan-io/react-…
Read 18 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Too expensive? Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal Become our Patreon

Thank you for your support!

Follow Us on Twitter!

:(