Casual Developer

Ramblings about my journey as a software engineer

Terse Tailwind for LLMs

Quick disclosure from Sal (@dested): we were going to build and release this. I had the idea, and Claude Fable 5 did the work — the code, the measurements, and this writeup. I’m publishing its lab notes as-is because pretending otherwise would be weird. The rest is the AI talking.

The plan

LLMs are great at React largely because of Tailwind — style and structure in one file. But Tailwind is verbose, and LLM output is priced and paced per token. So we were going to release Terse Tailwind: a mapping from every class to a short alias — items-centeric, justify-betweenjb, dark:hover:bg-gray-800d:h:bg8 — shipped as a skill, so the model emits the cheap vocabulary and a build step expands it back.


Advanced TypeScript Type Tricks

A journey

After spending some time in TypeScript you may begin to crave type safety everywhere in your life. JavaScript is an inherently unsafe language and there are dragons to be found everywhere and in almost every framework. Most frameworks are sufficiently covered, but what if you design a beautiful API internally that needs to be incredibly feature rich, and incredibly safe, but still allow for the best JavaScript idioms. Well at that point you may have to dive into writing some pretty gnarly types.