eslint-config 1.1.3
Install from the command line:
Learn more about npm packages
$ npm install @statsbomb/eslint-config@1.1.3
Install via package.json:
"@statsbomb/eslint-config": "1.1.3"
About this version
This is the base eslint config for Statsbomb projects. It extends the popular airbnb rules, with a few customisations and prettier baked in.
We do have a @statsbomb organisation set up at the npm registry.
We cannot use the npm organisation at the moment, because we also have private packages stored in Github's Package Registry, and there is currently no way of telling npm
to install private packages from one place and private ones from another.
Until that issue is fixed, this config is stored in Github's Package Registry.
In order to tell npm to download the package from Github rather than the npm registry, you will need to do the following:
- Generate a Github personal access token using these instructions.
- Your token will need read access at a minimum.
- Add the following to a
.npmrc
file in the project root, or per user (ie~/.npmrc
), replacingYOUR_GITHUB_AUTH_TOKEN
with your token.//npm.pkg.github.com/:_authToken=YOUR_GITHUB_AUTH_TOKEN @statsbomb:registry=https://npm.pkg.github.com
You will then be able to install in your project by running the following command:
npx install-peerdeps --dev @statsbomb/eslint-config
Add the following to your project's .eslintrc
or eslintrc.json
file:
{
"extends": [
"@statsbomb/eslint-config"
]
}
Or for React projects:
{
"extends": [
"@statsbomb/eslint-config/react"
]
}
Or for React with typescript projects:
{
"extends": [
"@statsbomb/eslint-config/typescript-react"
],
"parserOptions": {
"project": ["**/tsconfig.json"]
}
}
Currently, we have standard rules and React rules. Should we want more rules for an additional framework (Vue for example), they should extend the base config (./base.js). See the React rules as an example.
Base rules can be overridden in your local projects using the rules
property in your eslintrc
file.
This can be done within reason but should be done sparingly.
Publishing to NPM and Git Tagging is handled by a manual action in Github.
Click on Actions
-> Select Workflow
-> Publish
.
Choose the version from the following options:
- patch
- minor
- major
- prepatch
- preminor
- premajor
- prerelease
- or specify the semversion number directly (ie
1.0.1
)