Package Exports
- eslint-config-twilio-ts
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (eslint-config-twilio-ts) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
eslint-config-twilio-ts
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-devUsage
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
If you want to allow your IDE to auto-format your code as you save it, then create a .prettierrc.js and add:
const baseConfig = require('./node_modules/eslint-config-twilio/rules/prettier');
module.exports = {
...baseConfig,
};