eslint-try-rules
v0.3.0
Published
[![NPM Version][npm-image]][npm-url] [![NPM Downloads][downloads-image]][downloads-url] [](https://github.com/doberkofler/eslint-try-rules/actions/wo
Readme
eslint-try-rules
eslint-try-rules is a CLI tool designed to help developers incrementally adopt stricter ESLint rules. It allows you to test a set of rules against your codebase and generates a report showing which files would fail, without actually modifying your existing ESLint configuration.
Features
- Test Rules in Isolation: Run specific rules against your project to see their impact.
- Support for JSON and JSONC: Load rules from standard JSON or JSON files with comments.
- Progress Tracking: Real-time progress bar with ETA during linting.
- Detailed Reports: Generates a colored CLI summary with a tabular rule overview and a comprehensive HTML report.
- Flexible Sorting: Sort results by rule ID or by severity (total errors + warnings).
- Silent Mode: Suppress progress messages for cleaner output.
- ESLint 9+ Support: Built for the new ESLint Flat Config system.
- Safe Adoption: No changes are made to your existing
eslint.config.js.
Installation
You can run it directly using npx:
npx eslint-try-rules --rules try-rules.jsonOr install it globally:
npm install -g eslint-try-rulesOr as a development dependency in your project:
npm install -D eslint-try-rulesUsage
Create a try-rules.json (or .jsonc) file with the rules you want to test:
{
"@typescript-eslint/no-explicit-any": "error",
"curly": "error"
}Run the tool:
eslint-try-rules --rules try-rules.jsonTry the Example
You can run an example against this project's own source code:
npm run exampleThis uses the rules defined in example/try-rules.jsonc.
Options
--rules <path>: (Required) Path to the JSON/JSONC file containing the rules to test.--config <path>: (Optional) Path to your project's ESLint configuration file (e.g.,eslint.config.js).--sort <rule|severity>: (Optional) Sort results by rule ID (default) or by severity (total errors + warnings).--silent: (Optional) Suppress progress messages.
Output
The tool provides:
- CLI Report: A detailed summary of errors and warnings per rule, including file locations, followed by a tabular overview of all rules.
- HTML Report: A detailed, interactive HTML report saved as
eslint-try-rules.html.
Contributing
Please see CONTRIBUTING.md for detailed instructions on how to build, test, and contribute to this project.
License
MIT
