The point about shipping only the utilities you actually used is what makes the long class lists tolerable for me. One thing that helped on a bigger project was pulling repeated button and card patterns into components early, so the markup never gets that noisy. Do you find the naming-things problem really goes away, or does it just move into naming components?
That’s a great point! I think the naming problem mostly shifts rather than disappears. Tailwind removes the need to invent names for every small styling pattern, but once you start extracting components, you’re back to deciding what deserves a name and how reusable it should be.
I usually find that extracting repeated patterns like buttons and cards early helps, as long as we avoid creating abstractions for every tiny variation. The goal is to keep things consistent without making the component structure more complicated than the styling itself. How do you usually decide when a pattern deserves its own component?
Ethan Moore
The point about shipping only the utilities you actually used is what makes the long class lists tolerable for me. One thing that helped on a bigger project was pulling repeated button and card patterns into components early, so the markup never gets that noisy. Do you find the naming-things problem really goes away, or does it just move into naming components?