Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/bevry/eslint-config-bevry

Bevry's ESLint configuration is an adaptive configuration that automatically configures ESLint
https://github.com/bevry/eslint-config-bevry

Last synced: 16 days ago
JSON representation

Bevry's ESLint configuration is an adaptive configuration that automatically configures ESLint

Awesome Lists containing this project

README

        

# eslint-config-bevry

Status of the GitHub Workflow: bevry
NPM version
NPM downloads


GitHub Sponsors donate button
ThanksDev donate button
Patreon donate button
Liberapay donate button
Buy Me A Coffee donate button
Open Collective donate button
crypto donate button
PayPal donate button


Discord server badge
Twitch community badge

Bevry's ESLint configuration is an adaptive configuration that automatically configures ESLint based on the following:

- If you are using [Editions](https://editions.bevry.me), 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
- 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
- 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

To make use of it, you must first install it as a development dependency:

```bash
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:

```json
{
"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:

```bash
npx eslint --print-config .
```

## History

[Discover the release history by heading on over to the `HISTORY.md` file.](https://github.com/bevry/eslint-config-bevry/blob/HEAD/HISTORY.md#files)

## Backers

### Code

[Discover how to contribute via the `CONTRIBUTING.md` file.](https://github.com/bevry/eslint-config-bevry/blob/HEAD/CONTRIBUTING.md#files)

#### Authors

- [Benjamin Lupton](https://balupton.com) — Accelerating collaborative wisdom.

#### Maintainers

- [Benjamin Lupton](https://balupton.com) — Accelerating collaborative wisdom.

#### Contributors

- [Benjamin Lupton](https://github.com/balupton) — [view contributions](https://github.com/bevry/eslint-config-bevry/commits?author=balupton "View the GitHub contributions of Benjamin Lupton on repository bevry/eslint-config-bevry")
- [Michael Duane Mooring](https://github.com/mikeumus) — [view contributions](https://github.com/bevry/eslint-config-bevry/commits?author=mikeumus "View the GitHub contributions of Michael Duane Mooring on repository bevry/eslint-config-bevry")
- [Rob Loach](https://github.com/RobLoach) — [view contributions](https://github.com/bevry/eslint-config-bevry/commits?author=RobLoach "View the GitHub contributions of Rob Loach on repository bevry/eslint-config-bevry")

### Finances

GitHub Sponsors donate button
ThanksDev donate button
Patreon donate button
Liberapay donate button
Buy Me A Coffee donate button
Open Collective donate button
crypto donate button
PayPal donate button

#### Sponsors

- [Andrew Nesbitt](https://nesbitt.io) — Software engineer and researcher
- [Balsa](https://balsa.com) — We're Balsa, and we're building tools for builders.
- [Codecov](https://codecov.io) — Empower developers with tools to improve code quality and testing.
- [Poonacha Medappa](https://poonachamedappa.com)
- [Rob Morris](https://github.com/Rob-Morris)
- [Sentry](https://sentry.io) — Real-time crash reporting for your web apps, mobile apps, and games.
- [Syntax](https://syntax.fm) — Syntax Podcast

#### Donors

- [Andrew Nesbitt](https://nesbitt.io)
- [Armen Mkrtchian](https://mogoni.dev)
- [Balsa](https://balsa.com)
- [Chad](https://opencollective.com/chad8)
- [Codecov](https://codecov.io)
- [dr.dimitru](https://veliovgroup.com)
- [Elliott Ditman](https://elliottditman.com)
- [entroniq](https://gitlab.com/entroniq)
- [GitHub](https://github.com/about)
- [Hunter Beast](https://cryptoquick.com)
- [Jean-Luc Geering](https://github.com/jlgeering)
- [Michael Duane Mooring](https://mdm.cc)
- [Michael Harry Scepaniak](https://michaelscepaniak.com)
- [Mohammed Shah](https://github.com/smashah)
- [Mr. Henry](https://mrhenry.be)
- [Nermal](https://arjunaditya.vercel.app)
- [Pleo](https://pleo.io)
- [Poonacha Medappa](https://poonachamedappa.com)
- [Rob Morris](https://github.com/Rob-Morris)
- [Robert de Forest](https://github.com/rdeforest)
- [Sentry](https://sentry.io)
- [ServieJS](https://github.com/serviejs)
- [Skunk Team](https://skunk.team)
- [Syntax](https://syntax.fm)
- [WriterJohnBuck](https://github.com/WriterJohnBuck)

## License

Unless stated otherwise all works are:

- Copyright © [Benjamin Lupton](https://balupton.com)

and licensed under:

- [Artistic License 2.0](http://spdx.org/licenses/Artistic-2.0.html)