Package detail

eslint-config-bevry

bevry2.7kArtistic-2.05.5.0

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

babel, bevry, editions, es5

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, 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:

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.

Backers

Code

Discover how to contribute via the CONTRIBUTING.md file.

Authors

Maintainers

Contributors

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 — Software engineer and researcher
  • Balsa — We're Balsa, and we're building tools for builders.
  • Codecov — Empower developers with tools to improve code quality and testing.
  • Poonacha Medappa
  • Rob Morris
  • Sentry — Real-time crash reporting for your web apps, mobile apps, and games.
  • Syntax — Syntax Podcast

Donors

License

Unless stated otherwise all works are:

and licensed under:

changelog

History

v5.5.0 2024 January 2

v5.4.0 2023 December 30

v5.3.0 2023 December 6

v5.2.0 2023 November 24

v5.1.0 2023 November 21

v5.0.0 2023 November 19

  • Updated dependencies, base files, and editions using boundation
  • Minimum required Node.js version changed from node: >=8 to node: >=6 adapting to ecosystem changes
  • Drop semver dependency for version-clean which is lightweight and with better ecosystem support

v4.0.0 2023 November 14

  • Updated dependencies, base files, and editions using boundation
  • Minimum required Node.js version changed from node: >=10 to node: >=8 adapting to ecosystem changes

v3.29.0 2023 November 4

  • Fixed ESNext source edition not setting the correct eslint ECMAScript version
  • Changed default ECMAScript version from 2019 to the latest ratified version

v3.28.0 2023 November 1

v3.27.0 2021 July 30

v3.26.0 2021 July 29

v3.25.0 2021 July 29

v3.24.0 2021 July 28

v3.23.0 2020 October 29

v3.22.0 2020 September 4

v3.21.0 2020 September 4

  • Disable no-use-before-define and no-redeclare within TypeScript projects, as Typescript handles these better than eslint does
  • Updated dependencies, base files, and editions using boundation

v3.20.0 2020 September 4

v3.19.0 2020 August 18

v3.18.0 2020 August 4

v3.17.0 2020 July 22

v3.16.0 2020 July 22

v3.15.0 2020 July 21

v3.14.0 2020 July 21

v3.13.0 2020 June 25

v3.12.0 2020 June 21

v3.11.0 2020 June 21

v3.10.0 2020 June 20

v3.9.0 2020 June 10

v3.8.0 2020 June 10

v3.7.0 2020 May 22

v3.6.0 2020 May 21

v3.5.0 2020 May 13

v3.4.0 2020 May 4

v3.3.0 2020 April 28

v3.2.0 2020 April 27

  • Set worker env if any of these keywords are present: worker, webworker, workers, webworkers

v3.1.0 2020 April 21

v3.0.0 2020 March 26

  • Updated dependencies, base files, and editions using boundation
  • Minimum required node version changed from node: >=8 to node: >=10 to keep up with mandatory ecosystem changes

v2.3.0 2019 December 9

v2.2.0 2019 December 1

v2.1.0 2019 December 1

v2.0.0 2019 December 1

  • Updated dependencies, base files, and editions using boundation
  • Minimum required node version changed from node: >=6 to node: >=8 to keep up with mandatory ecosystem changes

v1.3.0 2019 November 18

v1.2.1 2019 May 13

  • Change engines to be >=6
  • Update dependencies

v1.2.0 2019 January 26

  • Swap out support for the deprecated typescript eslint packages with the new packages that they recommend
    • typescript-eslint-parser to @typescript-eslint/parser
    • eslint-plugin-typescript to @typescript-eslint/eslint-plugin

v1.1.2 2019 January 2

  • Fixed dependencies that are github references preventing dependency detection from functioning correctly

v1.1.1 2019 January 1

  • Fixed Parsing error: Invalid ecmaVersion by defaulting ecmaVersion to 2019 instead of the dynamic next year, which is now 2020

v1.1.0 2018 December 31

Adapter changes:

  • TypeScript source type is no longer enforced to module, it is now detected based on the edition tags
  • Better detection of React and FlowType projects
  • Add support for React Hooks
  • Set the needed React plugin version configuration, based on the react version from your dependencies

Rule changes:

  • Change spaced-comment rule to support TypeScript /// directives

v1.0.2 2018 November 22

  • Included file extension in package.json:main

v1.0.1 2018 November 22

  • Updated description

v1.0.0 2018 November 22

  • Abstracted out from bevry/base
  • Added prettier integration