ESLint is a popular linter for JavaScript.

Run Locally

The mozlint integration of ESLint can be run using mach:

$ mach lint --linter eslint <file paths>

Alternatively, omit the --linter eslint and run all configured linters, which will include ESLint.


The ESLint mozilla-central integration uses a skip list to exclude certain directories from being linted. This lives in topsrcdir/.eslintignore. If you don’t wish your directory to be linted, it must be added here.

The global configuration file lives in topsrcdir/.eslintrc. This global configuration can be overridden by including an .eslintrc in the appropriate subdirectory. For an overview of the supported configuration, see ESLint’s documentation.


The eslint linter provides a --fix option. It is based on the upstream option.

ESLint Plugin Mozilla

In addition to default ESLint rules, there are several Mozilla-specific rules that are defined in the Mozilla ESLint Plugin.

ESLint Plugin SpiderMonkey JS

In addition to default ESLint rules, there is an extra processor for SpiderMonkey code Mozilla ESLint SpiderMonkey JS.