React Newsletter #293

Why Remix, a technical code interview with Dan Abramov & Ben Awad, and Understanding re-rendering in React


This week's issue is sponsored by Raygun.

Improve your Core Web Vitals with this Definitive Guide

Pave the way to Core Web Vitals nirvana using this in-depth developer guide. Learn actionable tips, best-practice advice, and a proven workflow to boost your scores, bolster your Google search ranking and enhance your end-user experience.

👉 Check out the Guide.


Articles

TypeScript React props: interfaces vs type aliases

Ben Ilegbodu wrote this practical breakdown of when to use interfaces versus types when defining TypeScript object types such as React prop types.

Why Remix is worth your attention

Yang Zhang writes about how Remix is worth checking out because of its uniquely different approach to structuring React web apps. His recommendation is that, "even if you aren’t immediately switching everything over, learning Remix’s approach can help shape how you think about and approach React apps in any other context."

The Perils of Rehydration

Josh Comeau first wrote this article back in May about his "fundamental misunderstanding" about how React works in a server-side-rendering context. Many other React devs (still) probably share this misunderstanding, so this is a helpful read.

Why I no longer use GraphQL for new projects

A brief article by Andrew Lee on why he thinks GraphQL is a great choice for larger engineering organizations but not a great choice for newer projects with a small team. Do you agree?

Understanding re-rendering and memoization in React

Kolby Sisk gives a few quick tips to increase performance in your React application by better understanding re-rendering and memoization.


🚨 Announcement

This Wednesday at 4pm PT, we'll be doing an hour-long Zoom workshop on React Native and Expo with Charlie Cheever, the co-founder of Quora and Expo. Grab a free ui.dev trial if you want to join.


Tutorials

Make useRef lazy — 4 ways

Vladimir Klepov writes about how he loves useRef, even though it lacks the lazy initializer functionality found in other React hooks. To get around that, he wrote this tutorial to demonstrate four different ways to support lazy initializer in useRef (along with helpful code snippets and examples).


Projects

Lottie for React Native

A Lottie component for React Native (iOS and Android). Lottie is a mobile library for Android and iOS that parses Adobe After Effects animations exported as JSON with bodymovin and renders them natively on mobile.

Flags

An easy way to add Feature Flags to your Next.js apps with a single React Hook. This package integrates your Next.js application with HappyKit Flags.

Nice Modal

We've featured this project in the past, but wanted to shout it out again. It's a small, zero dependency utility to manage modals in a natural way for React. It uses context to persist state of modals globally so that you can show/hide a modal easily either by the modal component or id. Created by the eBay team.


Videos

Ben Awad gives Dan Abramov a technical coding interview

Ben puts Dan through an hour-long technical interview with various common interview questions for React/JavaScript developers.

How does React actually work?

In this 15-minute video, Philip Fabianek explores what is happening behind the scenes of a React application. It discusses React elements, components, React Reconciliation, the Diffing algorithm, rendering with the React DOM and more.

made with ❤️ by ui.dev