Registry / testing / eslint-config-etherpad

eslint-config-etherpad

JSON →
library4.0.5jsnpmunverified

ESLint shareable config used by Etherpad and its plugins. Version 4.0.5 (stable). This package provides multiple config presets (etherpad, etherpad/node, etherpad/browser, etherpad/tests, etc.) and a plugin-oriented config that automatically applies the correct presets based on file location. It includes a workaround for ESLint's modern module resolution issue (ESLint #3458). Key differentiator: tailored specifically for Etherpad ecosystem, handles backend/frontend/test code separately, and requires explicit peer dependency on ep_etherpad-lite to satisfy Node.js plugin checks.

npm install eslint-config-etherpad
INSTALL
IMPORT
SIG · ESLINT-CONFIG-ETHE
E
eslint-config-etherpad
testingjavascriptv4.0.5
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.

never
import { ... } from 'eslint-config-etherpad'
Default import or named imports not applicable; config is used in .eslintrc via 'extends'.
This package is not imported in code; it is used in ESLint configuration files.
module.exports
module.exports = { extends: 'etherpad/plugin' }
Using 'extends: 'etherpad'' instead of 'etherpad/plugin' when a full plugin config is needed.
The 'etherpad/plugin' config automatically applies the correct sub-configs for different file types.
require()
require('eslint-config-etherpad/patch/modern-module-resolution')
Omitting this require() call causes ESLint to fail to resolve plugins.
The patch is a workaround for ESLint issue #3458. Must be called before any 'extends' in .eslintrc.

Creates a .eslintrc.cjs file that extends the etherpad/plugin config and adds an override for shared Node/browser files.

// .eslintrc.cjs 'use strict'; // Workaround for https://github.com/eslint/eslint/issues/3458 require('eslint-config-etherpad/patch/modern-module-resolution'); module.exports = { root: true, extends: 'etherpad/plugin', overrides: [ { files: ['static/js/shared/**/*'], env: { 'shared-node-browser': true, }, }, ], };
Debug
Known issues
gotchaPatch required: The require('eslint-config-etherpad/patch/modern-module-resolution') call is necessary for ESLint to resolve plugins correctly. Omitting it causes 'Failed to load plugin' errors.
fix
Add 'require('eslint-config-etherpad/patch/modern-module-resolution');' at the top of .eslintrc.cjs.
affects: >=1.0.0
gotchaPeer dependency ep_etherpad-lite must be manually installed and symlinked; npm install removes the symlink.
fix
Run 'npm install --no-save ep_etherpad-lite@file:/path/to/etherpad-lite/src' after each npm install.
affects: >=1.0.0
deprecatedThe 'etherpad/plugin' config may become outdated as ESLint evolves; always check compatibility with your ESLint version.
fix
Ensure ESLint version matches the peer dependency range specified in package.json.
affects: >=4.0.0
gotchaESLint version mismatch: The shareable config may require a specific ESLint version. Using an incompatible version can cause rule errors.
fix
Refer to peerDependencies in package.json and install a compatible ESLint version.
affects: >=3.0.0
Errors
Common errors & fixes
Error: Failed to load plugin 'something' declared in '...'
Missing the modern-module-resolution patch require() call in .eslintrc.cjs.
fix
Add 'require('eslint-config-etherpad/patch/modern-module-resolution');' at the top of your ESLint config file.
Parsing error: Cannot find module 'typescript'
TypeScript is not installed as a peer dependency.
fix
Run 'npm install --save-dev typescript'.
Warning: Rule 'no-undef' encountered an unknown global '...'
Missing appropriate env or global definitions for the file type (e.g., browser globals in test files).
fix
Use the proper sub-config like 'etherpad/browser' or add env in overrides.
Error: Cannot find module 'eslint-config-etherpad'
Package not installed or module resolution fails without the patch.
fix
Ensure 'eslint-config-etherpad' is installed and the patch require() is called.
Upgrade
Version history
4.0.5latest on npm
Audit
Dependencies
eslintrequiredPeer dependency; ESLint is required to use the shareable config.
typescriptrequiredPeer dependency; required for TypeScript parsing and rules included in the config.
Agent activity
2 hits · last 30 days
node
2
Resources
eslint-config-etherpad — npm install eslint-config-etherpad · libregistry