Twilio ESLint Mocha Config
raw JSON → 2.0.0 verified Sat Apr 25 auth: no javascript
ESLint configuration for Mocha/Chai tests following Twilio's style guide (v2.0.0). Includes eslint-plugin-chai-friendly. Compatible with ESLint ^8; dropped support for ESLint 5-7. Low maintenance, stable release cadence. Differentiates by integrating with eslint-config-twilio base and Prettier.
Common errors
error ESLint couldn't find the config "twilio-mocha" ↓
cause Missing or incorrect installation of eslint-config-twilio-mocha.
fix
Run: npm install eslint-config-twilio-mocha --save-dev
error Configuration for rule "chai-friendly/no-unused-expressions" is invalid ↓
cause Conflicting rule from another ESLint config (e.g., eslint-plugin-chai-expect).
fix
Remove or disable conflicting chai-related plugin rules.
error Failed to load parser 'babel-eslint' ↓
cause eslint-config-twilio-mocha may expect babel-eslint if used with base eslint-config-twilio.
fix
Install babel-eslint: npm install babel-eslint --save-dev
Warnings
breaking v2.0.0 drops support for ESLint 5, 6, and 7 — only ESLint 8 is supported. ↓
fix Upgrade to ESLint 8 and eslint-config-twilio-mocha@2.0.0.
deprecated The prettier configuration via eslint-config-twilio is recommended; see README for details. ↓
fix Create a .prettierrc.js file that extends the base prettier rules from eslint-config-twilio.
gotcha The package uses eslint-plugin-chai-friendly. If using a different chai plugin, double-check rule compatibility. ↓
fix Ensure no conflicting chai rules are enabled.
Install
npm install eslint-config-twilio-mocha yarn add eslint-config-twilio-mocha pnpm add eslint-config-twilio-mocha Imports
- twilio-mocha wrong
"extends": ["eslint-config-twilio-mocha"]correct"extends": ["twilio-mocha"] - eslint-config-twilio-mocha wrong
npm install eslint-config-twilio --save-devcorrectnpm install eslint-config-twilio-mocha --save-dev - eslint wrong
npm install eslint --save-dev (if no version constraint)correctnpm install eslint@^8 --save-dev
Quickstart
// Install dependencies
npm install eslint@^8 eslint-config-twilio-mocha --save-dev
// .eslintrc.json
{
"extends": [
"twilio-mocha"
]
}
// package.json scripts
"scripts": {
"lint": "eslint --ext .js,.jsx src/ test/",
"lint:fix": "npm run lint -- --fix"
}