docusaurus/website/docs/api/misc/eslint-plugin
Viktor Malmedal 4a448773b6
feat: add eslint plugin no-html-links (#8156)
Co-authored-by: Joshua Chen <sidachen2003@gmail.com>
Co-authored-by: Viktor Malmedal <viktor.malmedal@eniro.com>
Co-authored-by: sebastienlorber <lorber.sebastien@gmail.com>
Co-authored-by: Sébastien Lorber <slorber@users.noreply.github.com>
2022-12-14 18:28:29 +01:00
..
no-html-links.md feat: add eslint plugin no-html-links (#8156) 2022-12-14 18:28:29 +01:00
no-untranslated-text.md docs: make config tabs translatable, fix APITable crowdin issue (#7572) 2022-06-06 10:52:19 +08:00
README.md feat: add eslint plugin no-html-links (#8156) 2022-12-14 18:28:29 +01:00
string-literal-i18n-messages.md docs: remove useless front matter (#7518) 2022-05-28 19:07:45 +08:00

sidebar_position slug
1 /api/misc/@docusaurus/eslint-plugin

📦 eslint-plugin

ESLint is a tool that statically analyzes your code and reports problems or suggests best practices through editor hints and command line. Docusaurus provides an ESLint plugin to enforce best Docusaurus practices.

Installation

npm install --save-dev @docusaurus/eslint-plugin

Usage

Add plugin:@docusaurus/recommended to the extends section of your .eslintrc configuration file:

{
  "extends": ["plugin:@docusaurus/recommended"]
}

This will enable the @docusaurus eslint plugin and use the recommended config. See Supported rules below for a list of rules that this will enable.

Manual config

For more fine-grained control, you can also enable the plugin manually and configure the rules you want to use directly:

{
  "plugins": ["@docusaurus"],
  "rules": {
    "@docusaurus/string-literal-i18n-messages": "error",
    "@docusaurus/no-untranslated-text": "warn"
  }
}

Supported configs

  • Recommended: recommended rule set for most Docusaurus sites that should be extended from.
  • All: all rules enabled. This will change between minor versions, so you should not use this if you want to avoid unexpected breaking changes.

Supported rules

Name Description
@docusaurus/no-untranslated-text Enforce text labels in JSX to be wrapped by translate calls
@docusaurus/string-literal-i18n-messages Enforce translate APIs to be called on plain text labels
@docusaurus/no-html-links Ensures @docusaurus/Link is used instead of <a> tags

= recommended

Example configuration

Here's an example configuration:

module.exports = {
  extends: ['plugin:@docusaurus/recommended'],
  rules: {
    '@docusaurus/no-untranslated-text': [
      'warn',
      {ignoredStrings: ['·', '—', '×']},
    ],
  },
};