tslint-config-rocketbroom

1.5.4 • Public • Published

tslint-config-rocketbroom

My fork of Shopify's TSlint rules and configs.

Installation

Install TSlint and tslint-config-rocketbroom:

With Yarn

yarn add --dev tslint tslint-config-shopify

With npm

npm install tslint tslint-config-rocketbroom --save-dev

Usage

Shopify's TSLint rules come bundled in tslint-config-alicekilpper. To enable these rules, create a tslint.json file at the root level of your project, and extend tslint-config-rocketbroom.

{
    "extends" : "tslint-config-rocketbroom"
}

Now you can run TSLint by adding the following linting script to your package.json. See here for more script configurations.

{
  "scripts": {
    "tslint": "tslint -c tslint.json './src/**/*.{ts,tsx}' --project tsconfig.json --type-check"
  }
}

Run it:

With Yarn

yarn run tslint

With npm

npm run tslint

Configuration

  • See here for more details on configuring your tslint.json.
  • See here for all the rules provided by TSlint

Some of the rules configured in tslint-config-rocketbroom may not be sufficient for your project. Override these rules in tslint.json:

{
  "extends": "tslint-config-rocketbroom",
  "rules": {
    "no-console": false
  }
}

Inline Linting in Text Editors

tslint-config-rocketbroom comes with a few rules that require type-checking to be enabled, however tslint uses a private API to resolves rules that require type-checking.

For this reason, text editors will fail when trying to resolve rules that require type-checking.

To resolve this issue, you can extend the untyped configuration

{
  "extends": ["tslint-config-rocketbroom/untyped"]
}

However, this will not enforce rules that require type-checking.

To enable the type-checking rules to be validated in your script, it is recommended that you run your CLI tslint script against the base configuration.

Eg: ./config/tslint-full.json

{
  "extends": ["tslint-config-rocketbroom"]
}

Then update your CLI tslint script to run against tslint-full.json.

{
  "scripts": {
    "tslint": "tslint -c ./config/tslint-full.json './src/**/*.{ts,tsx}' --project tsconfig.json --type-check"
  }
}

Package Sidebar

Install

npm i tslint-config-rocketbroom

Weekly Downloads

21

Version

1.5.4

License

MIT

Last publish

Collaborators

  • aliceklipper