That last part of yours is why I think arsebreeze (tailwind) is an even bigger steaming pile than React; as its creator has this giant rant about how “good practices aren’t”. It shows why he has such a blatantly ignorant misunderstanding of what HTML is, is for, and why CSS is separate from it. You can even tell the moment his thought processes went off the rails and he started down the path to derpitude.
… and it was the moment he started using SCSS and BEM.
Though more so, he thought of the separation of concerns strictly from the point of view of the developer writing for screen, and not all the other valid targets.
I’m actually slowly cobbling together an article on that topic, though the next two weeks all hell’s breaking loose on my schedule so who knows when I’ll get that one up.
Because as much as I hate all these JavaScript “front end frameworks”, it measures nowhere near as high on my disgust scale as the HTML/CSS ones where the authors are utterly devoid of understanding what semantic markup is, what it’s for, or why we’re supposed to be using it. See why they flip the bird at everything HTML 4 Strict was trying to turn us towards, and uses classes to recreate everything that was wrong with HTML 3.2 and browser-wars era presentational markup.
And then its advocates say I’m the one stuck in the ‘90’s whilst they use endless pointless idiotic presentational classes to replicate and expand upon methodologies that were deprecated for a reason… what a crock.