Registry / testing / eslint-config-braintree

eslint-config-braintree

JSON →
library7.0.1jsnpmunverified

Shared ESLint configuration for Braintree JavaScript projects. Current stable version is 7.0.1, requiring ESLint ^9.0.0 (flat config only, legacy .eslintrc support removed). It ships with TypeScript type declarations and provides presets for client (browserify), server (Node), and ES6 environments, as well as a JSDoc configuration. Unlike generic shareable configs (e.g., eslint-config-airbnb), it is opinionated for Braintree's internal standards and relies on plugins (e.g., @typescript-eslint/eslint-plugin, eslint-plugin-prettier) that must be installed separately. Release cadence is low; primarily updated for major ESLint versions.

npm install eslint-config-braintree
INSTALL
IMPORT
SIG · ESLINT-CONFIG-BRAI
E
eslint-config-braintree
testingjavascriptv7.0.1
Install
Import
Disk
Pass rate
0/ 6
Env Coverage0 / 6
glibc
1822
musl
1822
Install & Compatibility
Where this runs
tested against v? · npm install
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
musl
node 18226 runs
build_error
glibc
node 18226 runs
build_error
Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

braintreeConfig
const braintreeConfig = require('eslint-config-braintree');
import braintreeConfig from 'eslint-config-braintree';
This package uses CommonJS require() for flat config; ESM import is not supported. The correct usage for flat config is 'module.exports = braintreeConfig;'.
braintreeClientConfig
const braintreeClientConfig = require('eslint-config-braintree/client');
import braintreeClientConfig from 'eslint-config-braintree/client';
Use require() to load the client (browserify) preset. For flat config, spread into array: [...braintreeClientConfig, ...otherConfig].
braintreeServerConfig
const braintreeServerConfig = require('eslint-config-braintree/server');
require('eslint-config-braintree').server
The server config is exported as a separate entry point, not a property of the main config. Correct path is 'eslint-config-braintree/server'.

Shows how to install and configure the Braintree ESLint config using flat config (ESLint v9+), including required plugins and custom rule overrides.

// Install dependencies: // npm install eslint@^9 --save-dev // npm install eslint-config-braintree --save-dev // npm install @typescript-eslint/eslint-plugin eslint-plugin-prettier --save-dev // eslint.config.js (ESLint flat config, v9+) const braintreeConfig = require('eslint-config-braintree'); module.exports = [ ...braintreeConfig, { files: ['**/*.ts', '**/*.tsx'], rules: { 'no-new-object': 'warn', }, }, ];
Debug
Known issues
breakingVersion 7.0.0+ drops ESLint v8 support and requires ESLint ^9. Only flat config is supported; .eslintrc files are not compatible.
fix
Update ESLint to v9 and migrate to flat config (eslint.config.js). Remove .eslintrc files and use module.exports = [ ...braintreeConfig ].
affects: >=7.0.0
gotchaAll required ESLint plugins must be installed separately (peer dependencies not auto-installed). Missing plugins will cause ESLint to throw resolution errors.
fix
Run: npm install @typescript-eslint/eslint-plugin eslint-plugin-prettier --save-dev
affects: *
gotchaThe config uses CommonJS (require) and does not export an ESM-compatible module. Attempting to import with ESM (import) will fail.
fix
Use require() in CommonJS context or configure ESLint's flat config as a CommonJS file (eslint.config.js, not .mjs).
affects: *
deprecatedLegacy .eslintrc format is not supported in v7.x (ESLint v9+). Using 'eslint-config-braintree' with extends in .eslintrc will not work.
fix
Migrate to flat config (eslint.config.js) by spreading the config array.
affects: >=7.0.0
breakingVersion 6.x (last ESLint v8 compatible) is not officially released or documented; users still on v8 must pin to an older version or migrate.
fix
If using ESLint v8, stay on eslint-config-braintree v5.x (if available) or upgrade ESLint to v9.
affects: >=7.0.0
Errors
Common errors & fixes
Error: Failed to load plugin '@typescript-eslint' declared in 'eslint-config-braintree': Cannot find module '@typescript-eslint/eslint-plugin'
Required plugin is not installed as a direct dependency.
fix
npm install @typescript-eslint/eslint-plugin --save-dev
TypeError: Cannot read properties of undefined (reading 'configs')
Using import (ESM) instead of require to load the config, or loading config file as .mjs instead of .cjs.
fix
Use 'const x = require(...);' in a CommonJS file. Ensure eslint.config.js is not treated as ESM (name it .cjs or set type: 'module' and use dynamic import).
Error: Configuration for rule 'no-new-object' is invalid: you must specify options for this rule
Flat config requires spreading the config array before overriding rules; direct override on the module fails.
fix
Wrap the config import in an array: module.exports = [ ...braintreeConfig, { rules: { 'no-new-object': 'warn' } } ];
ESLint couldn't find the config 'braintree' after extending from it. Check that the name of the config is correct.
Using the legacy '.eslintrc' extends format with ESLint v9 (flat config only).
fix
Switch to flat config (eslint.config.js) and use require('eslint-config-braintree') as described in the docs.
Upgrade
Version history
7.0.1latest on npm
Audit
Dependencies

No dependency data recorded yet.

Agent activity
2 hits · last 30 days
node
2
Resources
eslint-config-braintree — npm install eslint-config-braintree · libregistry