Black Lives Matter.

@emotion/eslint-plugin

✏️ Edit this page

ESLint rules for emotion

Installation

You’ll first need to install ESLint:

$ npm i eslint --save-dev

Next, install @emotion/eslint-plugin:

$ npm install @emotion/eslint-plugin --save-dev

Note: If you installed ESLint globally (using the -g flag) then you must also install @emotion/eslint-plugin globally.

Usage

Add @emotion to the plugins section of your .eslintrc configuration file. You can omit /eslint-plugin:

{
  "plugins": ["@emotion"]
}

Then configure the rules you want to use under the rules section.

{
  "rules": {
    "@emotion/jsx-import": "error"
  }
}

Emotion 11 codemod

The Emotion 11 codemods are contained in this package. To use them, enable the rule shown below.

{
  "rules": {
    "@emotion/pkg-renaming": "error"
  }
}

Emotion 10 codemods

The Emotion 10 codemods are contained in this package. To use them, enable the rules shown below. Keeping these rules after migrating is also useful to have jsx from @emotion/react automatically imported when the css prop is used and other such things. You may also want to not enable certain rules while you are migrating or forever, such the no-vanilla rule.

{
  "rules": {
    "@emotion/jsx-import": "error",
    "@emotion/no-vanilla": "error",
    "@emotion/import-from-emotion": "error",
    "@emotion/styled-import": "error"
  }
}

Note:

These rules assume you are using React, if you are not using React, you should keep using the emotion package.

Supported Rules