eslint-config-powel

15.0.0 • Public • Published

eslint-config-powel

Version npm

ESLint configuration presets for powel projects.

Usage

Common

npm i -D eslint eslint-config-powel

Add to your .eslintrc

{
  "extends": "powel"
}

Babel

To use the Babel rule set:

npm i -D eslint eslint-config-powel @babel/eslint-parser

Add this to your .eslintrc:

{
  "extends": "powel/babel"
}

TypeScript

To use the TypeScript rule set:

npm i -D eslint eslint-config-powel @typescript-eslint/parser @typescript-eslint/eslint-plugin eslint-import-resolver-typescript

Add this to your .eslintrc:

{
  "extends": "powel/typescript"
}

React

To use the React rule set:

npm i -D eslint eslint-config-powel eslint-plugin-react eslint-plugin-react-hooks

Add this to your .eslintrc:

{
  "extends": "powel/react"
}

Import

To use the eslint-plugin-import rule set:

npm i -D eslint eslint-config-powel eslint-plugin-import

Add this to your .eslintrc:

{
  "extends": "powel/import"
}

Jest

To use the Jest rule set:

npm i -D eslint eslint-config-powel eslint-plugin-jest

Add this to your .eslintrc:

{
  "extends": "powel/jest"
}

css-modules

To use the eslint-plugin-css-modules rule set:

npm i -D eslint eslint-config-powel eslint-plugin-css-modules

Add this to your .eslintrc:

{
  "extends": "powel/css-modules"
}

Composition

You can use any combination of these presets.

Install the dependencies:

npm i -D eslint eslint-config-powel eslint-plugin-import @babel/eslint-parser @typescript-eslint/parser @typescript-eslint/eslint-plugin eslint-import-resolver-typescript eslint-plugin-react eslint-plugin-jest eslint-plugin-css-modules

.eslintrc:

{
  "extends": [
    "powel",
    "powel/babel",
    "powel/import",
    "powel/typescript",
    "powel/react",
    "powel/jest",
    "powel/css-modules"
  ],
  "rules": {
    // custom tweaks
  }
}

Patch

Our shareable config uses rules from external plugins such as eslint-plugin-prettier. This patch improves how ESLint loads plugins when working for example in a monorepo, see: https://github.com/eslint/eslint/issues/3458

.eslintrc.js

// Patch ESLint module resolution to find shared configs' plugins
require('eslint-config-powel/patch/modern-module-resolution');

module.exports = {
  extends: ['powel']
};

Readme

Keywords

Package Sidebar

Install

npm i eslint-config-powel

Weekly Downloads

180

Version

15.0.0

License

MIT

Unpacked Size

19.2 kB

Total Files

16

Last publish

Collaborators

  • fima1