explaingit

sds/scss-lint

Analysis updated 2026-07-03

3,669RubyAudience · developerComplexity · 2/5Setup · easy

TLDR

A Ruby command-line linter for SCSS stylesheets that checks for indentation, style, and consistency issues using configurable per-rule YAML config, note: the underlying Ruby Sass library is deprecated and stylelint is now recommended instead.

Mindmap

mindmap
  root((scss-lint))
    What it does
      Lints SCSS files
      Style consistency checks
      Configurable rules
    Features
      YAML config file
      Per-file inline disabling
      Multiple output formats
    Integration
      Git hooks
      Editor plugins
      CI and Rake tasks
      Code review services
    Status
      Depends on deprecated Ruby Sass
      stylelint recommended instead
    Setup
      Ruby gem install
      YAML config file
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Lint all SCSS files in a project to catch indentation errors, unnecessary units, and style inconsistencies before committing.

USE CASE 2

Configure a YAML rules file to enforce your team's SCSS style guide with per-rule severity levels.

USE CASE 3

Integrate scss-lint into a Git hook or CI pipeline to block commits that contain style violations.

USE CASE 4

Generate a starter config that disables all currently failing rules so you can enable and fix them one by one.

What is it built with?

RubySCSSSass

How does it compare?

sds/scss-lintjwt/ruby-jwtmikel/mail
Stars3,6693,6703,665
LanguageRubyRubyRuby
Setup difficultyeasyeasyeasy
Complexity2/52/52/5
Audiencedeveloperdeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · easy Time to first run · 5min

Requires Ruby 2.4+ and Sass 3.5.5+, note that the underlying Ruby Sass library is deprecated, consider stylelint for new projects.

In plain English

scss-lint is a command-line tool that checks SCSS files for style and consistency issues. SCSS is a stylesheet language that extends CSS with features like variables and nesting, scss-lint reads your SCSS files and reports problems such as inconsistent indentation, unnecessary units, or style choices that deviate from a configured set of rules. The goal is to keep stylesheets clean and consistent across a project, especially when multiple people are writing them. The tool is installed as a Ruby gem and run from the terminal against a folder or a set of files. When it finds something it objects to, it prints the filename and line number. You can configure which rules are active by creating a YAML config file in your project. Each rule, called a linter, can be turned on or off individually, and you can set its severity to either a warning or an error. Rules can also be disabled for specific files or even for specific lines within a file using inline comments. The README includes a prominent notice that should be read before adopting this tool. The underlying Ruby Sass library, which scss-lint depends on, is no longer actively maintained because the Sass team moved to a different implementation. This means scss-lint will eventually fall behind new Sass features. The README recommends considering stylelint as an alternative that is actively maintained and supports SCSS natively. Despite this notice, the project continues to accept pull requests and provide basic support. It integrates with several workflows: code review services, editor plugins, Git hooks, Rake build tasks, and a Maven plugin. The output format can be changed to suit different tools, and there is an option to generate a starting configuration file that disables all currently failing rules, so you can enable them one by one as you fix them. Requirements are Ruby 2.4 or higher and Sass 3.5.5 or higher. Files must be written in SCSS syntax, not the older indented Sass syntax.

Copy-paste prompts

Prompt 1
Show me how to install scss-lint as a Ruby gem and run it against all SCSS files inside a 'styles/' directory.
Prompt 2
Write a .scss-lint.yml config that enforces 2-space indentation, requires lowercase hex values, and turns the ColorVariable linter off.
Prompt 3
Write a Git pre-commit hook that runs scss-lint on all staged .scss files and blocks the commit if any errors are reported.
Prompt 4
Show me the scss-lint command that auto-generates a YAML config disabling every currently failing rule so I can enable them gradually.
Prompt 5
Explain the key differences between scss-lint and stylelint for SCSS linting, and write the stylelint equivalent for three common scss-lint rules.

Frequently asked questions

What is scss-lint?

A Ruby command-line linter for SCSS stylesheets that checks for indentation, style, and consistency issues using configurable per-rule YAML config, note: the underlying Ruby Sass library is deprecated and stylelint is now recommended instead.

What language is scss-lint written in?

Mainly Ruby. The stack also includes Ruby, SCSS, Sass.

How hard is scss-lint to set up?

Setup difficulty is rated easy, with roughly 5min to a first successful run.

Who is scss-lint for?

Mainly developer.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Scan in gitsafehub Deploy in gitdeployhub sds on gitmyhub

Verify against the repo before relying on details.