Sass vs Stylus: What are the differences?
What is Sass? Syntactically Awesome Style Sheets. Sass is an extension of CSS3, adding nested rules, variables, mixins, selector inheritance, and more. It's translated to well-formatted, standard CSS using the command line tool or a web-framework plugin.
What is Stylus? Expressive, robust, feature-rich CSS language built for nodejs. Stylus is a revolutionary new language, providing an efficient, dynamic, and expressive way to generate CSS. Supporting both an indented syntax and regular CSS style.
Sass and Stylus can be categorized as "CSS Pre-processors / Extensions" tools.
"Variables" is the primary reason why developers consider Sass over the competitors, whereas "Simple" was stated as the key factor in picking Stylus.
Sass is an open source tool with 12K GitHub stars and 1.93K GitHub forks. Here's a link to Sass's open source repository on GitHub.
According to the StackShare community, Sass has a broader approval, being mentioned in 2082 company stacks & 1445 developers stacks; compared to Stylus, which is listed in 69 company stacks and 45 developer stacks.
Originally, I was going to start using Sass with Parcel, but then I learned about Stylus, which looked interesting because it can get the property values of something directly instead of through variables, and PostCSS, which looked interesting because you can customize your Pre/Post-processing. Which tool would you recommend?
We know that
Sass is not a replace for
CSS, but in my mind there is no CSS with no Sass.
One of the first complement/plugins I add to the environment, are the Sass processing files/demons.
I couldn't imagine going back to pure CSS. Sass is even the way to go, regarding Styled Components, CSS Modules, and all the other options.
JSS is makes a lot of sense when styling React components and styled-components is a really nice implementation of JSS. I still get to write pure CSS, but in a more componentized way. With CSS post-processors like SASS and LESS, you spend a lot of time deciding where your .scss or .less files belong, which classes should be shared, and generally fighting the component nature of React. With styled-components, you get the best of CSS and React. In this project, I have ZERO CSS files or global CSS classes and I leverage mixins quite a bit.
Sign up to add or upvote prosMake informed product decisions
Sign up to add or upvote consMake informed product decisions
What is Sass?
What is Stylus?
Need advice about which tool to choose?Ask the StackShare community!
Sign up to get full access to all the companiesMake informed product decisions
Sign up to get full access to all the tool integrationsMake informed product decisions
One of the main reasons I use it is that it combines most of what I like but is spread across other preprocessors.
The option to make functions that take places of properties is amazing.
border-radius: "child" $parent-radius can actually be calling a function like
border-radius("child", $parent-radius) where using
border-radius: 4px would just implement the standard expected result.
Add in my favorite selector: `^[-1..-1] to get the last raw selector in a nested situation. (its like magic in combination with BEM naming syntax)
It was a little awkward building BS3 with LESS, and the rest of the site with SCSS, but it works. SCSS made building the UI elements (ink/flip buttons, img navs, etc) a breeze. It also drives the mobile menu open/close transitions - that would have been much too much with vanilla css.
Sass helps us write better stylesheets. One major improvement over CSS that we use a lot is variables - it allows for much easier theming to quickly change brand colors for new instances of the xCoLab.
When you realise that countless lines of CSS codes could be made countable. And off course, a wonderful and cool way to use the logic behind variables and nesting. Simply love it.
Sass is used as a part of Woltlab Suite Core, which offers to submit/configure own styles via the injection of own Sass-CSS. So we exclusively rely on Sass for our CSS needs.
CSS is a mess. There, we said it. Sass, on the other hand takes CSS and makes it pretty, easy to work with and has stuff like variables which make things seriously awesome.