Search code examples
javascriptcsswebpacknext.jsstylelint

How to set up Stylelint in a Next.js project?


I want to add Stylelint to my Next.js app. I am asking if I can edit next.config.js to add stylelint-webpack-plugin, so I get styles errors during compilation.

// next.config.js
module.exports = {
  reactStrictMode: true,
};

Solution

  • Prepare the setup for both CSS and SCSS

    1. Install needed packages:
    npm i stylelint stylelint-webpack-plugin --save-dev
    
    1. Create a .stylelintignore file in your root folder et past in it:
    node_modules
    
    1. Edit the next.config.js file:
    const StylelintPlugin = require("stylelint-webpack-plugin"); // line to add
    module.exports = {
      reactStrictMode: true,
      // lines to add
      webpack: (config, options) => {
        config.plugins.push(new StylelintPlugin());
        return config;
      },
    
    };
    

    Set up Stylelint with CSS

    1. Install the needed package:
    npm i stylelint-config-standard --save-dev
    
    1. Create a .stylelintrc file in your root folder and past in it:
    {
     "extends": "stylelint-config-standard",
     "rules": {
       "string-quotes": "double"
      }
    }
    

    Set up Stylelint with SCSS

    1. Install needed packages:
    npm i sass stylelint-config-standard-scss --save-dev
    
    1. Create a .stylelintrc file in your root folder and past in it:
    {
     "extends": "stylelint-config-standard-scss",
     "rules": {
       "string-quotes": "double"
      }
    }