Skip to main content
Docusaurus

Search documentation

Type to search this documentation.

On this pageOverview

📦 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.

This ESLint plugin supports ESLint >= 8.57.0, flat configs and legacy configs.

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

Both built-in configs exist in flat and legacy variants:

  • 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.
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 ✅
@docusaurus/prefer-docusaurus-heading Ensures @theme/Heading is used instead of <hn> tags for headings ✅

✅ = recommended

Import @docusaurus/eslint-plugin and add docusaurus.configs.flat.recommended to your flat config array:

eslint.config.js
import {defineConfig} from 'eslint/config';import docusaurus from '@docusaurus/eslint-plugin';export default defineConfig(  docusaurus.configs.flat.recommended,  {    // Other config  },);

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

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

eslint.config.js
import {defineConfig} from 'eslint/config';import docusaurus from '@docusaurus/eslint-plugin';export default defineConfig({  plugins: {docusaurus},  rules: {    '@docusaurus/string-literal-i18n-messages': 'error',    '@docusaurus/no-untranslated-text': 'warn',  },});

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

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

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

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

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

Propose a replacement for this page. The site team reviews it before applying any changes.

Export
Documentation menu