{"id":19602,"library":"eslint-config-twilio-base","title":"eslint-config-twilio-base","description":"Twilio's base ESLint configuration for JavaScript, providing a consistent style guide for Twilio projects. Current stable version is 2.0.0, which requires ESLint 8 and drops support for ESLint 5, 6, and 7. This config is intended to be extended by other Twilio-specific style packages, not used standalone. It is part of the Twilio Style ecosystem, with regular updates aligned with ESLint releases.","status":"active","version":"2.0.0","language":"javascript","source_language":"en","source_url":"https://github.com/twilio-labs/twilio-style","tags":["javascript","config","eslint","eslintconfig","styleguide","twilio"],"install":[{"cmd":"npm install eslint-config-twilio-base","lang":"bash","label":"npm"},{"cmd":"yarn add eslint-config-twilio-base","lang":"bash","label":"yarn"},{"cmd":"pnpm add eslint-config-twilio-base","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"peer dependency required for runtime","package":"eslint","optional":false}],"imports":[{"note":"This config is used via ESLint's extends mechanism, not directly imported.","wrong":"const config = require('eslint-config-twilio-base');","symbol":"TwilioBaseConfig","correct":"module.exports = {\n  extends: 'twilio-base'\n};"},{"note":"ESLint configs are not JavaScript modules; use extends string.","wrong":"import { twilioBase } from 'eslint-config-twilio-base';","symbol":"Default import","correct":"module.exports = {\n  extends: ['twilio-base']\n};"},{"note":"Require the package name without the prefix, as ESLint resolves it automatically.","wrong":"{\n  \"extends\": \"eslint-config-twilio-base\"\n}","symbol":"Initialize in .eslintrc","correct":"{\n  \"extends\": \"twilio-base\"\n}"}],"quickstart":{"code":"// .eslintrc.json\n{\n  \"extends\": \"twilio-base\"\n}\n\n// Then run:\n// npm install eslint eslint-config-twilio-base --save-dev\n// eslint .","lang":"javascript","description":"Shows how to use twilio-base config in an ESLint configuration file."},"warnings":[{"fix":"Upgrade to ESLint 8.","message":"Version 2.0.0 drops support for ESLint 5, 6, and 7. Only ESLint 8 is supported.","severity":"breaking","affected_versions":">=2.0.0"},{"fix":"Use eslint-config-twilio for a complete setup including React specific rules.","message":"This package is a base config and should not be used directly if you want full Twilio style. Instead, use eslint-config-twilio which extends this package with React rules.","severity":"gotcha","affected_versions":"all"},{"fix":"Use 'twilio-base' in the extends array.","message":"The package name is eslint-config-twilio-base, but in the extends field you should use 'twilio-base' (without the eslint-config- prefix).","severity":"gotcha","affected_versions":"all"}],"env_vars":null,"last_verified":"2026-04-25T00:00:00.000Z","next_check":"2026-07-24T00:00:00.000Z","problems":[{"fix":"Run npm install eslint eslint-config-twilio-base --save-dev","cause":"The package is not installed or not a peer dependency.","error":"Cannot find module 'eslint-config-twilio-base'"},{"fix":"Ensure your .eslintrc file is valid JSON. If using .eslintrc.yaml, use proper YAML syntax.","cause":"Using an array with extends in an older ESLint format.","error":"ESLint configuration in .eslintrc is invalid: Unexpected top-level property \"extends\""}],"ecosystem":"npm","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}