eslint-plugin-unicorn is an ESLint plugin that provides more than 300 linting rules for JavaScript and TypeScript code.
The plugin addresses the need for comprehensive, opinionated linting beyond ESLint's core rules. It targets common JavaScript and TypeScript patterns and anti-patterns, offering both automatic fixes and manual suggestions for many rules. The rules also extend to non-JavaScript files including CSS, HTML, JSON, Markdown, and YAML when used with matching ESLint language plugins. The tool provides preset configurations that can be used directly or individual rules can be configured manually in an ESLint flat config file.
Developers should adopt this plugin if they want stricter, more comprehensive linting coverage than ESLint provides by default and prefer an opinionated approach to code quality. It suits projects using modern JavaScript or TypeScript with ESLint flat config and ESM. The README mentions XO as an alternative, which bundles this plugin along with other configurations, making it suitable for teams wanting a complete linting setup without manual configuration.
The project maintains a strict policy against accepting pull requests due to AI-generated contributions, instead directing rule proposals through the contributing guidelines. Development activity shows consistent engagement with the codebase through automated documentation generation and active maintenance of the rule set. The tool requires recent versions of ESLint and enforces modern JavaScript standards including flat config and ESM support.