[go: up one dir, main page]

Skip to content

Kin-Carta-Connect/eslint-config

Repository files navigation

K+C ESLint config

The K+C recommended shareable config for ESLint.

It turns on all the possible errors rules within eslint based on our JS styleguide.

Use it as is or as a foundation for your own config. You can extend or clone and change.

Installation

npm install -D @kinandcarta/eslint-config

Usage

This package includes the following configurations:

  • @kinandcarta/eslint-config - The base code style guide.
  • @kinandcarta/eslint-config/node - To be used in addition to "@kinandcarta/eslint-config" configuration by projects that use Node.
  • @kinandcarta/eslint-config/jest - To be used in addition to "@kinandcarta/eslint-config" configuration by projects that use jest.
  • @kinandcarta/eslint-config/react - To be used in addition to "@kinandcarta/eslint-config" configuration by projects that react React.

If you've installed @kinandcarta/eslint-config locally within your project, just set your eslint config to:

{
  "extends": "@kinandcarta/eslint-config"
}

or if you are working on a Node script:

{
  "extends": [
		"@kinandcarta/eslint-config"
		"@kinandcarta/eslint-config/node"
  ]
}

If you've globally installed @kinandcarta/eslint-config using the -g flag, then you'll need to use the absolute path to @kinandcarta/eslint-config in your config e.g.

{
  "extends": "/absolute/path/to/@kinandcarta/eslint-config"
}

You can also simply use the globally installed configuration name instead of the absolute path:

{
  "extends": "@kinandcarta/eslint-config"
}

Extending the config

Simply add a "rules" key to your config, then add your overrides and additions there.

For example, to change the comma-dangle rule to off:

{
  "extends": "@kinandcarta/eslint-config",
  "rules": {
    "comma-dangle": "off",
  }
}

Deploy

To deploy a new version, make sure you have a clean node_modules folder and then install the npm modules:

npm i --no-package-lock

The repository uses sematic release with the conventionalcommits preset to deploy releases.

Details regarding these types can be found in the official CONTRIBUTING guide.

Complementary tools

Editor plugins

More integration tools can be found here https://eslint.org/docs/user-guide/integrations

Find eslint rules

Find eslint rules that are not configured in your eslint config. This is useful to see what else is new and what is deprecated or updated.

Running this in your root folder will show the list.

npx eslint-find-rules

More info here https://github.com/sarbbottam/eslint-find-rules

Inspiration

This config is heavily inspired by the following configs and tools: