Need advice about which tool to choose?Ask the StackShare community!

CSS Modules

101
128
+ 1
1
Sass

30K
21.5K
+ 1
3K
Add tool

CSS Modules vs Sass: What are the differences?

Developers describe CSS Modules as "A CSS file in which all class names and animation names are scoped locally by default". It is a CSS file in which all class names and animation names are scoped locally by default. The key words here are scoped locally. With this, your CSS class names become similar to local variables in JavaScript. It goes into the compiler, and CSS comes out the other side. On the other hand, Sass is detailed as "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.

CSS Modules and Sass belong to "CSS Pre-processors / Extensions" category of the tech stack.

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.

Airbnb, StackShare, and Asana are some of the popular companies that use Sass, whereas CSS Modules is used by Getaround, Discord, and Canopy. Sass has a broader approval, being mentioned in 2101 company stacks & 1486 developers stacks; compared to CSS Modules, which is listed in 12 company stacks and 4 developer stacks.

Advice on CSS Modules and Sass
awesomebanana2018
Needs advice
on
Stylus
Sass
and
PostCSS

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?

See more
Replies (1)
Recommends
PostCSS

You're not correct with saying "vs Postcss". You're using Less/Sass/Stylus/... to produce "CSS" (maybe extended means it has some future features) and then in any case PostCSS will play (it is shipped with Parcel/NextJS/CRA/...)

See more
Get Advice from developers at your company using Private StackShare. Sign up for Private StackShare.
Learn More
Pros of CSS Modules
Pros of Sass
  • 1
    Static rather than compiled at runtime
  • 606
    Variables
  • 589
    Mixins
  • 466
    Nested rules
  • 410
    Maintainable
  • 298
    Functions
  • 149
    Modular flexible code
  • 141
    Open source
  • 112
    Selector inheritance
  • 107
    Dynamic
  • 96
    Better than cs
  • 4
    Used by Bootstrap
  • 2
    If and for function
  • 1
    Inheritance (@extend)
  • 1
    Custom functions
  • 1
    Better than less

Sign up to add or upvote prosMake informed product decisions

Cons of CSS Modules
Cons of Sass
    Be the first to leave a con
    • 1
      Needs to be compiled

    Sign up to add or upvote consMake informed product decisions

    - No public GitHub repository available -

    What is CSS Modules?

    It is a CSS file in which all class names and animation names are scoped locally by default. The key words here are scoped locally. With this, your CSS class names become similar to local variables in JavaScript. It goes into the compiler, and CSS comes out the other side.

    What is Sass?

    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.

    Need advice about which tool to choose?Ask the StackShare community!

    What companies use CSS Modules?
    What companies use Sass?
    See which teams inside your own company are using CSS Modules or Sass.
    Sign up for Private StackShareLearn More

    Sign up to get full access to all the companiesMake informed product decisions

    What tools integrate with CSS Modules?
    What tools integrate with Sass?
      No integrations found

      Sign up to get full access to all the tool integrationsMake informed product decisions

      What are some alternatives to CSS Modules and Sass?
      Radium
      Radium is a set of tools to manage inline styles on React elements. It gives you powerful styling capabilities without CSS.
      BEM
      This methodology was developed at Yandex with the goals in mind that Fast development and long-lasting results for standard projects,A project involves many people,Scalable teams,Code reuse.
      CSS Blocks
      By combining an opinionated authoring system, build-time analysis and rewriting of templates, and a new type of CSS optimizer, css-blocks breathes new power and ease of use into the technologies and best practices that stylesheet developers already know and love.
      styled-components
      Visual primitives for the component age. Use the best bits of ES6 and CSS to style your apps without stress 馃拝
      Emotion
      Emotion is a performant and flexible CSS-in-JS library. Building on many other CSS-in-JS libraries, it allows you to style apps quickly with string or object styles. It has predictable composition to avoid specificity issues with CSS. With source maps and labels, Emotion has a great developer experience and great performance with heavy caching in production.
      See all alternatives