0.0.1 • Published 1 year ago

eslint-config-shaunburdick v0.0.1

Weekly downloads
-
License
UNLICENSED
Repository
-
Last release
1 year ago

Shaun's JS/TS Lint Rules

Rules for eslint used in my personal Javascript (etc) development.

Javascript (es6)

Install:

npm install --save-dev eslint@8 eslint-plugin-import@2 eslint-config-shaunburdick

Create an .eslintrc.yml file with the following:

env:
    browser: true
    commonjs: true
    es2021: true
extends:
    - "eslint-config-shaunburdick"
parserOptions:
    ecmaVersion: 12

TypeScript

Install:

npm install --save-dev eslint@8 eslint-plugin-import@2 eslint-config-shaunburdick @typescript-eslint/parser@5 @typescript-eslint/eslint-plugin@5

Create an .eslintrc.yml file with the following:

env:
    browser: true
    es2021: true
    node: true
extends:
    - "eslint-config-shaunburdick/typescript"
parserOptions:
    ecmaVersion: 12
    sourceType: module
    project: ./tsconfig.json

Package Setup

To setup linting automatically, we recommend adding these script entries to your package.json:

"lint": "eslint .",
"lint:fix": "npm run lint -- --fix",

Then you can add npm run lint to your test script command to run it before any tests

Versioning Policy

  • Major (new linting errors)
    • A new rule is added
    • An existing rule is made more strict
    • A new plugin is added to an existing config
    • A existing plugin is updated to be more strict
  • Minor (same or fewer linting errors)
    • A rule is removed
    • An existing rules is made less strict
    • Adding a new configuration
    • A existing plugin is updated to be less strict
  • Patch (non-user-facing changes)
    • Changes to documentation
    • Fixes for build or publication
    • Modifying tests

Publish steps

  • Checkout main (git checkout main)
  • Pull master (git pull)
  • Examine CHANGELOG.md to determine next version (X.Y.Z)