eslint-config-twilio

raw JSON →
2.0.0 verified Sat Apr 25 auth: no javascript

Twilio's official ESLint shareable config enforcing JavaScript style guidelines. Current stable version 2.0.0 requires ESLint ^8 and drops support for ESLint 5, 6, and 7. Integrates with prettier, eslint-plugin-import, eslint-plugin-no-only-tests, and eslint-plugin-sonarjs. Designed for Twilio's codebase but usable by any JavaScript project. Released under twilio-style monorepo with slow cadence; no known further updates.

error Error: Cannot find module 'eslint-config-twilio'
cause Package not installed or not in node_modules.
fix
Run 'npm install eslint eslint-config-twilio --save-dev'.
error Error: Failed to load plugin 'import' declared in 'BaseConfig': Cannot find module 'eslint-plugin-import'
cause Peer dependencies (including eslint-plugin-import) are not installed automatically.
fix
Install missing peer dependencies: 'npm install eslint-plugin-import --save-dev'.
error Error: ESLint configuration in .eslintrc.json is invalid: Unexpected top-level property "extends"
cause Using an invalid ESLint config file format (e.g., missing JSON quotes or using JavaScript object).
fix
Ensure .eslintrc.json is valid JSON with double-quoted strings.
breaking Dropped support for ESLint 5, 6, and 7. Only ESLint ^8 is supported.
fix Upgrade ESLint to version 8 or later.
gotcha You must install peer dependency eslint@^8 manually; npm<7 does not auto-install peer deps.
fix Run 'npm install eslint@^8 --save-dev' if not already installed, or upgrade npm to >=7.
gotcha The prettier rules are not applied unless you extend 'twilio'. Overriding prettier/prettier rules requires additional configuration.
fix Follow the Prettier section in README to customize: add override rule 'prettier/prettier': ['warn', {}, { 'usePrettierrc': true }]
npm install eslint-config-twilio
yarn add eslint-config-twilio
pnpm add eslint-config-twilio

Installs eslint@^8 and eslint-config-twilio, configures ESLint with the twilio preset, and sets up lint and lint:fix scripts.

// Install
npm install eslint@^8 eslint-config-twilio --save-dev

// .eslintrc.json
{
  "extends": ["twilio"]
}

// package.json scripts
{
  "scripts": {
    "lint": "eslint --ext js src/",
    "lint:fix": "npm run lint -- --fix"
  }
}

// Example usage
npx eslint src/