Skip to content

Latest commit

 

History

History

eslint-config-twilio-ts

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

eslint-config-twilio-ts

Version Downloads License

Twilio's approach to TypeScript styling.

Plugins and Extensions

This config includes the following plugins and extensions:

Installation

$ npm install eslint eslint-config-twilio-ts --save-dev

Usage

Add the ESLint config to either your package.json or your .eslintrc:

package.json

{
  "name": "my-project",
  "eslintConfig": {
    "extends": [
      "twilio-ts"
    ]
  }
}

.eslintrc

{
  "extends": [
    "twilio-ts"
  ]
}

Then add the following two scripts for running and fixing your codebase:

{
  "scripts": {
    "lint": "eslint --ext ts src/",
    "lint:fix": "npm run lint -- --fix"
  }
}

Enabling React

To enable React linting in TypeScript, also install eslint-config-twilio-react and add twilio-react as an extension to your ESLint Config file. Then update the lint script to:

{
  "scripts": {
    "lint": "eslint --ext ts --ext tsx src/"
  }
}

.eslintrc

NOTE: twilio-ts should come after twilio-react because twilio-ts overrides conflicting rules:

{
  "extends": [
    "twilio-react",
    "twilio-ts"
  ]
}

Prettier

This package makes use of Prettier for setting specific code formatting rules in your project.

If you want to allow your IDE to auto-format your code as you save it, then create a .prettierrc.js and import the base configuration from the eslint-config-twilio.

const baseConfig = require('./node_modules/eslint-config-twilio/rules/prettier');

module.exports = {
  ...baseConfig,
};

You might also want to edit/extend those rules according to your project style-guide. To do that, you will need to make ESLint aware of the changes.

From your .eslintrc file, add the following override rules:

"prettier/prettier": ["warn", {}, {
  "usePrettierrc": true
}],