Our great sponsors
-
SurveyJS
Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App. With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js.
-
styled-components
Visual primitives for the component age. Use the best bits of ES6 and CSS to style your apps without stress 💅
Component based CSS frameworks originating with OOCSS inherently limits selector scope to only elements inside the 'CSS object'.
Taking the idea to somewhat of an extreme, CSS modules explicitly makes all CSS locally scoped by default.
Tailwind sticks to a single level of class based specificity – not including normalizing CSS.
Lastly, JS frameworks like Vue and Svelte provide an all in one experience, where template, style, and functionality all live in the same file.
CSS-in-JS category of tooling (JSS, Styled-Components, etc.) does 'inline++' styling, which also has the added benefit of placing style information right next to template.
Atomic frameworks like Atomic CSS and Tailwind takes a single purpose approach to selectors, so CSS properties are naturally never overlapping – this is also why Tailwind's @apply is an anti-pattern when overused.