eslint-config-bevry
Bevry's ESLint configuration is an adaptive configuration that automatically configures ESLint based on the following:
- If you are using Editions, then make use of the information it provides
- If you are using Modules (import/export), then configure ESLint for it
- If you are using a ES5 or below, then configure ESLint for it
- Disables incompatible rules that require ES6+
- If you are using JSX, then configure ESLint for it
- If you are using React, then configure ESLint for it
- Enables the plugin
eslint-plugin-react
and configures it with its recommended rules and the react version you are using - Enables the plugin
eslint-plugin-react-hooks
and configures it with its recommended rules
- Enables the plugin
- If you are using TypeScript, then configure ESLint for it
- Enables the plugin
eslint-plugin-typescript
- Configures the parser as
typescript-eslint-parser
- Disables incompatible rules that require JavaScript
- Enables the plugin
- If you are using
eslint-plugin-babel
, then configure ESLint for it- Enables the plugin, and automatically configures the rule replacements
- If you are using
babel-eslint
, then configure ESLint for it - If you are using Prettier, the configure ESLint for it
- Enables the configuration
eslint-config-prettier
- Enables the plugin
eslint-plugin-prettier
and configures it with its recommended rules - Enables the other prettier configurations automatically based on feature/language usage
- Enables the configuration
To make use of it, you must first install it as a development dependency:
npm install --save-dev eslint-config-bevry
Then for full automatic usage, the only ESLint configuration you will need is to add the following to your package.json
file:
{
"eslintConfig": {
"extends": ["bevry"]
}
}
If you would like more control, rather than extending bevry
directly, you can extend the individual parts instead:
-
bevry/rules
contains the rules for our coding standard, you can use or not use this to your liking -
bevry/adapt
contains the adaptive configuration, this should be the last extension you apply
To ensure it is working, compare the results of the following command with what you would expect:
npx eslint --print-config .
History
Discover the release history by heading on over to the HISTORY.md
file.
Contribute
Discover how you can contribute by heading on over to the CONTRIBUTING.md
file.
Backers
Maintainers
These amazing people are maintaining this project:
Sponsors
No sponsors yet! Will you be the first?
Contributors
These amazing people have contributed code to this project:
- Benjamin Lupton — view contributions
- Michael Duane Mooring — view contributions
- Rob Loach — view contributions
- dependabot[bot] — view contributions
Discover how you can contribute by heading on over to the CONTRIBUTING.md
file.
License
Unless stated otherwise all works are:
- Copyright © 2018+ Benjamin Lupton
and licensed under: