Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ryanzim/eslint-config-problems
An eslint config that catches problems in your code, without checking style. For use with prettier.
https://github.com/ryanzim/eslint-config-problems
eslint eslint-config linter-config prettier
Last synced: 1 day ago
JSON representation
An eslint config that catches problems in your code, without checking style. For use with prettier.
- Host: GitHub
- URL: https://github.com/ryanzim/eslint-config-problems
- Owner: RyanZim
- License: isc
- Created: 2017-07-08T16:39:13.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2024-04-05T21:16:26.000Z (10 months ago)
- Last Synced: 2024-04-14T13:10:04.771Z (10 months ago)
- Topics: eslint, eslint-config, linter-config, prettier
- Language: JavaScript
- Size: 37.1 KB
- Stars: 67
- Watchers: 3
- Forks: 3
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# eslint-config-problems
`eslint-config-problems` is an [ESLint](http://eslint.org/) config that doesn't regulate your code style. It only catches actual problems with your code.
It's designed for use with [Prettier](https://prettier.io/), the opinionated code formatter.
## Contents
- [Rules](#rules)
- [I disagree with rule X; you missed rule Y](#i-disagree-with-rule-x-you-missed-rule-y)
- [Installation & Usage](#installation--usage)
- [License](#license)## Rules
Rules were chosen based on the following criteria:
- No stylistic rules; nothing that Prettier can fix
- Prevent guaranteed runtime errors (i.e. no undefined variables)
- Disallow "evil" things like `eval`
- Disallow archaic language features like `with`
- Disallow obvious bad practices like `new Number(13)`
- Force usage of ES2015+ features
- Point out places the code could be made shorter. For example:
```js
if (someCondition) return someValue;
else {
// Do something else
}
```
The `else` block is unneeded, since the `if` block contains a `return` statement. `eslint-config-problems` will point this out to you (or auto-fix with the `--fix` option).### I disagree with rule X; you missed rule Y
If you disagree; feel free to open an issue. I'm open to changing rules if you have a good reason.
If I missed a rule that prevents an actual problem or is otherwise in keeping with the general guidelines above, please open an issue as well; I just might add it.
## Installation & Usage
_`eslint-config-problems` is designed to work with ESLint v9+; if you're still using ESLint v8 or earlier, use `eslint-config-problems` v8.0.0._
---
npm install -D eslint eslint-config-problems
In your **eslint.config.js**:
```js
import problems from 'eslint-config-problems';export default [
problems,
{
rules: {
// custom rules
},
},
];
```## License
[ISC](LICENSE)