I think Tailwind has its place in very large, complicated web projects. You don't have to worry about the size and scalability of your stylesheet ever again.
However, it's not without drawbacks
The first is the added complexity. Tailwind isn't usable without Purging. You have to have a proper setup for your tailwind config, postcss, purge, and whetever your need in between. Setting up takes time and requires maintenance, especially as dependencies change.
Want to go crazy with wild grid layouts? Animation? Next-gen properties? You'll have to implement them in Tailwind by hand first, which kinda defies its reason. Do that a lot, and you'll soon feel like you're constantly fighting against your CSS framework.
Tailwind 1.4 actually bakes in purgeCSS into the tailwind config file! Now, when the NODE_ENV is production it will purge the output!
Also, I would argue that the things you talk about needing to "fight the framework" is just stuff you should be extending to tailwind with something like postcss imports!
That's exactly my point. Writing new extensions just to be able to write normal CSS is fighting the framework.
I may have misspoke, I do not think you should ever need to write extensions to extend tailwind.
I think instead, you should write normal PostCSS and import it into the same file that is being bundled, kinda I do here.
This way, you can maintain your own custom base, component, and utility styles and use them in conjunction with Tailwind's generated classes!
We're a place where coders share, stay up-to-date and grow their careers.
We strive for transparency and don't collect excess data.