{"id":26374,"library":"scsslint","title":"scsslint","description":"Legacy Node.js bindings for the Ruby-based scss-lint tool (v0.0.3). This package wraps the Ruby gem and provides a simple API to lint SCSS files programmatically from Node.js. It is part of the grunt-scsslint ecosystem and has not been updated since 2014. It requires Ruby and the scss-lint gem to be installed separately. Not to be confused with modern SCSS linters like stylelint-scss. Active development ceased; use at your own risk.","status":"abandoned","version":"0.0.3","language":"javascript","source_language":"en","source_url":"https://github.com/FWeinb/scsslint","tags":["javascript","gruntplugin"],"install":[{"cmd":"npm install scsslint","lang":"bash","label":"npm"},{"cmd":"yarn add scsslint","lang":"bash","label":"yarn"},{"cmd":"pnpm add scsslint","lang":"bash","label":"pnpm"}],"dependencies":[],"imports":[{"note":"ESM import will not work; this package only supports CommonJS `require`.","wrong":"import ScssLinter from 'scsslint';","symbol":"ScssLinter","correct":"const ScssLinter = require('scsslint');"},{"note":"Must use `new` keyword; calling without `new` will cause a runtime error.","wrong":"const linter = ScssLinter();","symbol":"constructor","correct":"const linter = new ScssLinter();"},{"note":"Argument order is files, options, callback — not files, callback, options.","wrong":"linter.lint(files, callback, options);","symbol":"lint method","correct":"linter.lint(files, options, callback);"}],"quickstart":{"code":"const ScssLinter = require('scsslint');\nconst linter = new ScssLinter();\n\nlinter.lint(\n  ['path/to/file.scss', 'path/to/another.scss'],\n  { colorize: true, verbose: true },\n  function(err, result) {\n    if (err) {\n      console.error('Lint error:', err);\n    } else {\n      console.log('Lint result:', result);\n    }\n  }\n);","lang":"javascript","description":"Shows how to install, require, instantiate, and call the lint method with files, options, and callback."},"warnings":[{"fix":"Install Ruby and run `gem install scss-lint` before using this package.","message":"Requires Ruby and scss-lint gem installed separately. Without them, the package will fail silently or throw a cryptic error.","severity":"breaking","affected_versions":">=0.0.0"},{"fix":"Always use `new ScssLinter()`.","message":"The package exports a constructor, not a factory. Calling `ScssLinter()` without `new` will not create a proper instance.","severity":"gotcha","affected_versions":">=0.0.0"},{"fix":"Migrate to stylelint and @stylelint/postcss-css-in-js or similar modern tooling.","message":"The underlying scss-lint Ruby gem is deprecated and unmaintained. Use stylelint with scss plugin instead.","severity":"deprecated","affected_versions":">=0.0.0"},{"fix":"Ensure arguments are: files (array), options (object), callback (function).","message":"The `lint` method expects files as an array of strings, options object, and a callback. Incorrect argument ordering will cause unexpected behavior.","severity":"gotcha","affected_versions":">=0.0.0"},{"fix":"Check for Ruby and scss-lint availability before using the package, or wrap call in try-catch.","message":"No error handling if the scss-lint gem is not installed; the callback may never be called or receive an error.","severity":"gotcha","affected_versions":">=0.0.0"}],"env_vars":null,"search_vec":"'2014':48 'activ':74 'api':25 'base':9 'bind':4 'ceas':76 'confus':65 'develop':75 'ecosystem':41 'file':29 'gem':20,57 'grunt':39 'grunt-scsslint':38 'gruntplugin':83 'instal':60 'javascript':82 'legaci':2 'like':70 'lint':12,27,56 'linter':69 'modern':67 'node.js':3,32 'packag':16 'part':35 'programmat':30 'provid':22 'requir':50 'risk':81 'rubi':8,19,51 'ruby-bas':7 'scss':11,28,55,68,73 'scss-lint':10,54 'scsslint':1,40 'separ':61 'simpl':24 'sinc':47 'stylelint':72 'stylelint-scss':71 'tool':13 'updat':46 'use':77 'v0.0.3':14 'wrap':17","created_at":"2026-05-01T13:49:39.414371+00:00","updated_at":"2026-05-01T13:49:39.414371+00:00","problems":[{"fix":"Run `npm install scsslint --save` and ensure Ruby is installed.","cause":"Package not installed or npm failed to install due to missing Ruby dependencies.","error":"Cannot find module 'scsslint'"},{"fix":"Change to `new ScssLinter()`.","cause":"Called `ScssLinter()` without `new`.","error":"ScssLinter is not a constructor"},{"fix":"Install Ruby, then run `gem install scss-lint`.","cause":"Ruby gem scss-lint is not installed or not in PATH.","error":"sh: scss-lint: command not found"},{"fix":"Use CommonJS `require` and ensure the package is installed properly.","cause":"Import failed or the package didn't load correctly (e.g., due to CJS/ESM mismatch).","error":"TypeError: linter.lint is not a function"}],"ecosystem":"npm","meta_description":null,"install_score":null,"quickstart_score":null,"quickstart_tag":null,"pypi_latest":null,"cli_name":"","cli_version":null,"type":"library","homepage":null,"github":"https://github.com/FWeinb/scsslint","docs":null,"changelog":null,"pypi":null,"npm":"https://www.npmjs.com/package/scsslint","openapi_spec":null,"status_page":null,"smithery":null,"categories":["testing"],"base_url":null,"auth_type":null,"provenance":{"verified_status":null,"verified_at":null,"last_verified":"2026-05-01","next_check":"2026-07-30","install_tag":null}}