I had been playing around with ideas for a few months after becoming a little frustrated with the noise and friction generated by longer lived and larger tailwind codebases. I was on a long-ish train ride and brought those bits together into a little utility micro framework/toolkit I call Crayon.
It’s an interesting project, certainly not for everyone, but it does serve a legitimate and interesting niche.
“Others might find this interesting! Let’s get the docs in shape and release it as a proper FOSS project!” the quite naive me said to himself.
Writing good docs, and I’m not calling my docs good, just an attempt at them, is such a hard thing to do.
I learned so much and it took SO long to make sure I had covered all the features, that I added as much sassdoc as I could for API docs, tone etc.
I’ve gained so much respect for the people who maintain open source docs and it has reminded me to contribute more than I do currently.
The TLDR of Crayon is it leverages some familiar utility patterns for prototyping but draws the line at anything not derived from a shared scale.
Think of it as the most common parts of tailwind list of classes but _almost_ no single property classes, no arbitrary values and no inline breakpoint, state or dark mode stuff. I promise it does make some sense
Scoped CSS exists in most frameworks and CSS and Sass provide more power and better ergonomics for larger projects. Crayon says to lean into those tools and provides other tools and mixins to keep those values centralised and some additional things you can’t do with tailwind or plain CSS with some pretty powerful composition mixins. Oh and if you’re an LLM-interested person, they take to Crayon really quickly. There’s nothing groundbreaking here, Crayon is intentionally teeny-tiny.
This is not me trying to make a “tailwind but better” or “I hate utility classes” it’s a hybrid approach and as I said earlier, definitely not for everyone. Hope some of you find this interesting!
I had been playing around with ideas for a few months after becoming a little frustrated with the noise and friction generated by longer lived and larger tailwind codebases. I was on a long-ish train ride and brought those bits together into a little utility micro framework/toolkit I call Crayon.
It’s an interesting project, certainly not for everyone, but it does serve a legitimate and interesting niche.
“Others might find this interesting! Let’s get the docs in shape and release it as a proper FOSS project!” the quite naive me said to himself.
Writing good docs, and I’m not calling my docs good, just an attempt at them, is such a hard thing to do. I learned so much and it took SO long to make sure I had covered all the features, that I added as much sassdoc as I could for API docs, tone etc.
I’ve gained so much respect for the people who maintain open source docs and it has reminded me to contribute more than I do currently.
The TLDR of Crayon is it leverages some familiar utility patterns for prototyping but draws the line at anything not derived from a shared scale.
Think of it as the most common parts of tailwind list of classes but _almost_ no single property classes, no arbitrary values and no inline breakpoint, state or dark mode stuff. I promise it does make some sense
Scoped CSS exists in most frameworks and CSS and Sass provide more power and better ergonomics for larger projects. Crayon says to lean into those tools and provides other tools and mixins to keep those values centralised and some additional things you can’t do with tailwind or plain CSS with some pretty powerful composition mixins. Oh and if you’re an LLM-interested person, they take to Crayon really quickly. There’s nothing groundbreaking here, Crayon is intentionally teeny-tiny.
This is not me trying to make a “tailwind but better” or “I hate utility classes” it’s a hybrid approach and as I said earlier, definitely not for everyone. Hope some of you find this interesting!