Swizec Teller - a geek with a hatswizec.com

Senior Mindset Book

Get promoted, earn a bigger salary, work for top companies

Senior Engineer Mindset cover
Learn more

    Swizec's articles in the "react" category

    I aim to write mindblowing emails with real insight into the career and skills of a modern software engineer. "Raw and honest from the heart!" as one reader described them.

    Below are 86 articles filed under react. Enjoy ❀️

    TanStack Router – modern React for the rest of us

    TanStack Router puts the router in control of data, state, and UI and it's ... really good.

    People like me are why you shouldn't run a hosting company

    A daring adventure of manipulating GET parameters in a NextJS 14 project, pushing hosting limits and avoiding the need for data storage. Dive into the chaos of compressing inputs to keep the project delightfully storage-free.

    A few thoughts on tRPC

    Discover tRPC's potential in building end-to-end type safe RPC APIs in this insightful blog post. Perfect for developers seeking innovative solutions for server-client separation in webapp development.

    Update state during render, better explained

    A few readers wrote in to say that the React Can Update State During Render email last week made no sense. Here's a better explanation.

    React can update state during render

    An unexpected feature of React: updating state during render. It's a UX and performance optimization

    My biggest React App performance boost was a backend change

    Performance lives in the unlikliest of places. Follow the metrics.

    Async React with NextJS 13

    We look at React's native async support and how to use it in a NextJS 13 app. Learn how to use async components, parallel loading states, and caching with React.js and NextJS 13.

    Reader question: useReducer or XState?

    Following up from my article about XState and Stately.ai, fellow reader S. asked if `useReducer` could ever be relevant when using state machines in React code. Yes! Here's how

    When your brain is breaking, try Stately.ai

    Two years ago I wrote about using XState after building a UI interaction so twisted my brain leaked out my ears. It helped. Now the creators have made something even better – Stately.ai 😍

    Learnings about the future of the web from Reactathon

    The first in-person conference in years! It was wonderful 🀩 - Remix is great - Serverless at edge is the future - GDPR does not play with πŸ‘†

    Adding categories to a Gatsby blog (for better SEO)

    One of my biggest frustrations since migrating swizec.com from Wordpress to Gatsby was that I never added categories. Always wanted to, never did. Thought it would be super hard. Gatsby made it painless

    A new VSCode extension makes state machines shine on a team

    When you grok state machines, a new world of computational beauty and software design opens in front of your eyes. Things that used to be hard become easy. The impossible becomes possible. And you turn into that annoying team member.

    How to add Typeform as a Gatsby source

    Every year I ask readers if they're enjoying my newsletter. Then fail to use those responses πŸ˜… This year I said heck it and built a /testimonials page that shows everyone's feedback raw from Typeform. Here's how.

    You can use React Query for slow computation, not just API

    You can use the ergonomics of React Query for any slow operation and it's wonderful.

    Why I'm excited about React 18 – talk

    React 18 is coming soon. I hope 🀞 Here's a talk I gave exploring its implications and showing off demos with working code.

    React 18 and the future of async data

    Friend, I have glimpsed the future and it is amazing. React 18 is shipping with Suspense and startTransition for deferred component rendering, but not data loading. That's coming in a future 18.x version.

    Hacking the React AST for fun and profit – #CodeWithSwiz ep34

    This is hold my beer level of hackery. It didn't work but we learned lots in the process.

    A better React 18 startTransition demo

    Demoing startTransition is hard. Modern computers are too fast πŸ˜… – Dan Abramov, a React core team member, helped me fix it up. Here's what I learned

    Trying out React 18 Alpha

    I read everything about React 18 Alpha, trawled through the work group, and ran some experiments. Here's what you'll wanna know.

    2 quick tips for 250% better Lighthouse scores – CodeWithSwiz 28

    Your site may be fast for users, but Google don't care. Official metrics or bust.

    Variants – a quick tip for better React components

    Reusable components like to grow boolean props for different situations and complexity soon blows up. Variant props are the perfect solution.

    A TypeScript trick for reusable hooks

    Reusable hooks are all fun and games until TypeScript starts yelling at you about incompatible types.

    SSR, SSRwR, SSG, CSR, WTFBBQ???

    These abbreviations are getting out of hand. It's like a bad interviewer's wet dream.

    Refactoring a useReducer to XState, pt1 – CodeWithSwiz 11

    XState promises to be like useReducer+Context combined and the simplest way to handle complex state in React apps. But can it deliver? On this episode of #CodeWithSwiz, we gave it a shot.

    Why NextJS /api routes are fab – CodeWithSwiz 6

    In this episode of CodeWithSwiz, we tried NextJS's support for /api routes – code running on the backend. In a word – Wow

    How React Query gives you almost everything you thought you needed GraphQL for

    GraphQL solves every problem you've ever had talking to APIs on the frontend. Mention a switch to GraphQL to your team and they think it's a joke. Rewrite our entire app? oh you jokester. React Query is the perfect middle ground ❀️

    Why you should build a form generator

    Lemme guess, every project involves 1 or 2 forms and they're all the friggen same. You got forms coming out the wazoo. Render fields. Connect to state. Add field validation. Detect submit. Add form validation. Send fetch request. Repeat.

    Created by Swizec with ❀️