frontend engineering

Thread Digest

Hi, I'm Hazel. A slow blog about frontend engineering and the craft of shipping software. I write about form validation, server-side rendering, hydration and whatever else I'm learning this month.

Latest writing

  • · 3 min read

    A Practical Guide to CSS Container Queries

    This post started as a note to my future self. Every few months I relearn the same lessons about container queries, so this time I'm writing them down.

    #react#performance
  • · 3 min read

    Server Components, One Year Later

    This post started as a note to my future self. Every few months I relearn the same lessons about server-side rendering, so this time I'm writing them down.

    #javascript#css
  • · 3 min read

    What Actually Moved Our Largest Contentful Paint

    Every codebase has one area everyone is a little afraid to touch. On our team, it was everything related to hydration.

    #javascript#typescript#css
  • · 3 min read

    Why I Stopped Reaching for a State Management Library

    I've been working with Storybook for about 4 years now, and my opinions on form validation have changed more than I expected.

    #javascript#react
  • · 3 min read

    Notes From Migrating a Large App to Vite

    I've been working with Vite for about 7 years now, and my opinions on design tokens have changed more than I expected.

    #testing#css#tooling
  • · 3 min read

    The Accessibility Bugs Our Test Suite Never Caught

    There is no shortage of articles about React. Most of them cover the happy path. This one is about what happened after the happy path ended.

    #performance#tooling#typescript
  • · 3 min read

    Design Tokens Are a Contract, Not a Color Palette

    This post started as a note to my future self. Every few months I relearn the same lessons about design tokens, so this time I'm writing them down.

    #javascript#css
  • · 3 min read

    Building Forms That Don't Fight the Browser

    A colleague asked me last week why our team cares so much about Core Web Vitals. I gave a rambling answer, so here is the longer, more organized version.

    #a11y#typescript#react
  • · 3 min read

    Shipping Less JavaScript Without Rewriting Everything

    A colleague asked me last week why our team cares so much about bundle size. I gave a rambling answer, so here is the longer, more organized version.

    #css#performance
  • · 3 min read

    How We Test UI Without Snapshot Tests

    A colleague asked me last week why our team cares so much about design tokens. I gave a rambling answer, so here is the longer, more organized version.

    #performance#a11y#typescript