What is eslint-plugin-es?
The eslint-plugin-es npm package is a plugin for ESLint that provides linting rules for ES2015+ (ES6+) code. It helps developers to follow best practices and avoid common pitfalls when writing modern JavaScript.
What are eslint-plugin-es's main functionalities?
Linting for new syntax
This feature allows developers to enforce rules that prevent the use of certain ES2015+ syntax. In the code sample, the rule 'no-arrow-functions' is set to 'error', which means ESLint will report an error if an arrow function is used.
"rules": {
"es/no-arrow-functions": "error"
}
Disallowing specific ES features
With this feature, developers can disallow the use of specific ES features that they do not want in their codebase. The code sample shows how to disallow template literals by setting the 'no-template-literals' rule to 'error'.
"rules": {
"es/no-template-literals": "error"
}
Configurable rules for ES versions
This feature allows developers to configure ESLint to only allow features from certain versions of ECMAScript. In the code sample, all ES2015 features are disabled.
"settings": {
"es": { "features": { "[ES2015]": false } }
}
Other packages similar to eslint-plugin-es
eslint-plugin-compat
This package provides linting rules to ensure compatibility with specific browser versions. It is similar to eslint-plugin-es in that it helps with writing code that conforms to certain constraints, but it focuses on browser compatibility rather than ECMAScript versions.
eslint-plugin-node
eslint-plugin-node offers linting rules that are specific to Node.js development. It includes rules that prevent issues related to Node.js features and APIs. While eslint-plugin-es focuses on ECMAScript syntax, eslint-plugin-node focuses on Node.js environment rules.
eslint-plugin-import
This plugin provides a set of rules related to ES6+ import/export syntax. It helps in managing module imports, ensuring proper syntax and order. It complements eslint-plugin-es by focusing on module system rules, whereas eslint-plugin-es focuses on a broader range of ECMAScript features.
eslint-plugin-es
ESLint plugin which disallows each ECMAScript syntax.
🏁 Goal
Espree, the default parser of ESLint, has supported ecmaVersion
option.
However, it doesn't support to enable each syntactic feature individually.
This plugin lets us disable each syntactic feature individually.
So we can enable arbitrary syntactic features with the combination of ecmaVersion
and this plugin.
📖 Usage
See documentation
🚥 Semantic Versioning Policy
This plugin follows semantic versioning and ESLint's semantic versioning policy.
📰 Changelog
See releases.
❤️ Contributing
Welcome contributing!
Please use GitHub's Issues/PRs.
Development Tools
npm test
runs tests and measures coverage.npm run clean
removes the coverage result of npm test
command.npm run coverage
shows the coverage result of the last npm test
command.npm run docs:build
builds documentation.npm run docs:watch
builds documentation on each file change.npm run watch
runs tests on each file change.