ESLint rules according to gsmlg' personal preference
npm install eslint-config-gsmlgESLint rules for all of my personal projects. Feel free to use these conventions :-)
---
- Installation
- Usage
- Other configs
- Things to know
- Issues
- 🐛 Bugs
- 💡 Feature Requests
- LICENSE
This module is distributed via [npm][npm] which is bundled with [node][node] and
should be installed as one of your project's devDependencies:
```
npm install --save-dev eslint-config-gsmlg
This library has a required peerDependencies listing for [eslint][eslint]
Then add the extends to your .eslintrc.js:
`javascript`
module.exports = {
extends: 'gsmlg',
rules: {
// your overrides
},
}
This config also exposes a few other configs that I use often and pull in as
needed.
You can use them standalone:
`javascript`
module.exports = {
extends: 'gsmlg/
}
Or in combination with the base config (recommended)
`javascript`
module.exports = {
extends: ['gsmlg', 'gsmlg/
}
Note: Due to this bug you
need to have the associated plugins installed to make things work. I recommend
adding them as dependencies to your project if you're going to use the config
for it.
- jest: jest testing frameworkjsx-a11y
- :react
eslint-plugin-jsx-a11y
for rules regarding accessibility with JSX (_eslint-plugin-jsx-a11y_)
- : React JS library@typescript-eslint
(_eslint-plugin-react_)
- :
@typescript-eslint/parser
and
@typescript-eslint/eslint-plugin.
- The default config uses @babel/eslint-parser to support stage features that@babel/eslint-plugin
ESLint doesn't support and it opts to use the rulespossible-errors.js
over the ESLint rules to support rules for these features as well.
- All plugins needed for rules used by these configs are dependencies of this
module so you don't have to install anything on your own.
- The default config actually is composed of several configurations and you can
use those individually. These are the configs it's using:
, best-practices.js, stylistic.js, es6/index.js, andimport/index.js
. You can use each of these configs yourself if you want toes6
leave my own personal style out of it. Also, the and import configspossible-errors.js
each have a , best-practices.js, and stylistic.js
which they are composed of as well.
#### Example of highly customized config
`javascript``
module.exports = {
extends: [
'gsmlg/possible-errors',
'gsmlg/best-practices',
'gsmlg/es6/possible-errors',
'gsmlg/import',
'gsmlg/jest',
],
rules: {
/ custom rules /
},
}
_Looking to contribute? Look for the [Good First Issue][good-first-issue]
label._
Please file an issue for bugs, missing documentation, or unexpected behavior.
[See Bugs][bugs]
Please file an issue to suggest new features. Vote on feature requests by adding
a 👍. This helps maintainers prioritize what to work on.
[See Feature Requests][requests]
MIT
This is forked from kcd-scripts.