vite

  • The stylesheet that finally got a second maintainer

    2,100 lines that one person could change, and the year spent fixing that. Every stylesheet change routed through one person for four years.

  • Vite 7, and a config that stayed one line

    A major version upgrade with no configuration change, on a build that had already been reduced to a proxy declaration. A configuration that has shrunk to one line…

  • Twelve lines of build script and no dependencies

    A site with four modules, and a build that is a shell script calling one binary. The metafile is what makes the hashed filename usable — something has…

  • A build with no bundler

    A site with 18 KB of JavaScript and a build pipeline sized for something larger. What a bundler provides, listed, and which of it is needed.

  • Vite 7, and a config that shrank

    A major version in June, and a configuration file that lost four options because they became defaults. A configuration file that shrinks on a major upgrade means the…

  • Tailwind 4, and configuration that is a stylesheet

    A JavaScript configuration file replaced by CSS, which changes what the tool is rather than how it is set up. A configuration file in the language of the…

  • Tailwind 4, and the stylesheet we had already written

    4.0 in January, a CSS-first configuration, and a genuine reason to look again at a decision that had been made three times.

  • isolatedDeclarations, and the build it made parallel

    A flag requiring every export to have an explicit type annotation, in exchange for declaration files that can be generated without type checking. The cost is annotating every…

  • A design token pipeline that outlived its designer

    A token pipeline built in 2022 and the person who understood it has left. A colour change that took three days and touched five files.

  • The dependency we vendored

    A 200-line package with 41 transitive dependencies, doing one thing, and an advisory in something four levels down that we had never heard of.