Installs: 2

Dependents: 0

Suggesters: 0

Security: 0

Stars: 2

Watchers: 3

Forks: 1


v1.0.4 2022-11-01 18:27 UTC

This package is auto-updated.

Last update: 2022-12-01 21:57:58 UTC


ESLint shareable config to activate eslint-plugin-es checks based on browserslist browser targets and MDN browser compatibility data.


Generally you'll install this via your package manager, e.g.

npm install --save-dev eslint eslint-plugin-es @automattic/eslint-config-target-es


First, you'll probably want to set up a browserslist configuration.

Then you can use this like any other sharable config in your .eslintrc.* file. Three configurations are offered.

To check only for language features, such as nullish coalescing, your eslintrc might look like

	extends: [ '@automattic/eslint-config-target-es/language' ],

To check only for builtins, such as Promise, WeakRef, and various features of RegExp, your eslintrc might look like

	extends: [ '@automattic/eslint-config-target-es/builtins' ],

To check both, your eslintrc might look like

	extends: [ '@automattic/eslint-config-target-es/all' ],

For least surprise, omitting any suffix is the same as /all.

Checking built files

If you want to check your built files to make sure you didn't omit transpiling any packages that need transpiling, you might create a validate-es.config.js like this

module.exports = {
	root: true,
	extends: [ '@automattic/eslint-config-target-es/language' ],
	env: {
		// Whatever environments you need.

and then run eslint like

eslint --no-eslintrc --no-inline-config --config validate-es.config.js --no-ignore build/

to avoid your standard eslintrc and eslintignore and to avoid errors from any inline directives.

Advanced usage

You can import or require @automattic/eslint-config-target-es/functions to gain access to some functions that can be used to build your own configuration.

As browserslist and MDN use different browser codes, getBrowsers( { query: } ) will take a browserslist query and return an object with the MDN browser codes and the minimum matched version for each.

getRules( { query:, builtins: } ) will return the rules config. Set builtins true for "builtins", false for "language", or null/undefined for "all".


Need to report a security vulnerability? Go to or directly to our security bug bounty site


eslint-config-target-es is licensed under GNU General Public License v2 (or later)