I've been using Tachyons for a few years now. Not really sure what the advantage is for using Tailwind. I tried Tailwind, but it couldn't replace the ease, simplicity, and light weight of Tachyons.
I agree. Tachyons is the best functional CSS framework out there. You also get used to the nomenclature very fast so it's pretty easy to just create an extend.css stylesheet to address use cases that tachyons don't cover. Like if you need a something between "w3" and "w4, you can easily just write a "w3half" class that has a custom width that is equivalent to 3 and 1/2 width, and you will remember that forever.
I totally agree!
I much prefer Tailwind, especially because of the way it uses PostCSS to let you create combinations of utility classes into one class without the problems of using @extend in SCSS for example.
I also find Tailwind has much better docs explaining the benefit of utility classes, how to use it to get the most out of it, and things like theming of colors.
I use PostCSS to add custom stuff to Tachyons, to suit the site needs. I agree re: SCSS extend. PostCSS is way better.
This is inline styles reborn. It's a way to avoid learning CSS and a guaranteed maintainability nightmare.
I see why you would think this is maintainability nightmare, but it really isn't, especially if you're rendering from the server. You can have very organized logic for all your styles and still have all the control of the CSS without ever leaving our templates. Besides that, this is the purest form of CSS because you know everything is being applied in a pseudo-inline style, which means you get the benefits of the specificity without losing control of the global styles. You can always override any class and get that globally applied to all your website.
It's a different mindset, but I found it incredibly useful and liberating.
On the other hand, I have never tested this at semi-large scale so I don't know if this really scales, but CSS is horrible to maintain at larger scales anyways (regardless the approach).
To my mind, there is very little reason to use this in any serious project.
When used inline, it creates cruft and messy markup, you'd be better off writing styles inline. This has an added effect of making your markup harder to parse for people familiar with the syntax, as well as making it indecipherable to people who are not.
When used to build components, it adds another layer of cognitive load, now you must learn an abstracted version of CSS that gives you less control and has an unintuitive syntax.