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
muslnode 18–226 runs
build_error
glibcnode 18–226 runs
build_error
Code
Verified usage
Verified import paths — ran on the pinned version, not inferred.
default
✓ import uphostConfig from 'eslint-config-uphold';
✗ const uphostConfig = require('eslint-config-uphold');
ESM-only package; CommonJS require() fails. For flat config usage.
typescript
✓ import { typescript } from 'eslint-config-uphold/configs';
✗ import { typescript } from 'eslint-config-uphold';
Subpath export under /configs. In older versions (<5.x) was under 'eslint-config-uphold/typescript'.
javascript
✓ import { javascript } from 'eslint-config-uphold/configs';
✗ import { javascript } from 'eslint-config-uphold';
Subpath export under /configs.
createTypeScriptConfig
✓ import { createTypeScriptConfig } from 'eslint-config-uphold/configs';
✗ import { createTypeScriptConfig } from 'eslint-config-uphold';
Factory for custom TypeScript config, e.g., for CommonJS modules.
createJavaScriptConfig
✓ import { createJavaScriptConfig } from 'eslint-config-uphold/configs';
✗ import { createJavaScriptConfig } from 'eslint-config-uphold';
Factory for custom JavaScript config, e.g., for ES modules.
Flat ESLint config using the default Uphold config, with custom rules and global ignores.
import uphostConfig from 'eslint-config-uphold';
import { defineConfig, globalIgnores } from 'eslint/config';
export default defineConfig([
uphostConfig,
{
name: 'my-project/config',
rules: {
'no-console': 'warn'
}
},
globalIgnores(['dist', 'node_modules'])
]);
Errors
Common errors & fixes
Error [ERR_MODULE_NOT_FOUND]: Cannot find module 'eslint-config-uphold'
Missing peer dependency or incorrect import path (e.g., using require() in ESM project).
fixInstall all peer dependencies: npm install eslint eslint-config-uphold prettier --save-dev. Use import instead of require.
Error: 'eslint-config-uphold' is not exported from package
Trying to import from subpath that doesn't exist (e.g., 'eslint-config-uphold/typescript' in v6).
fixUse 'eslint-config-uphold/configs' for subpath exports.
Error: The 'ecmaVersion' option must be a number or 'latest'.
Passing invalid ecmaVersion to createTypeScriptConfig or createJavaScriptConfig factory.
fixPass a valid ECMAScript version integer (e.g., 2022) or 'latest'.
Error: Node.js version 18.x is not supported. Minimum required versions: v23.0.0, v22.12.0, or v20.19.0.
Using Node.js versions below the minimum requirement.
fixUpgrade Node.js to v20.19.0+, v22.12.0+, or v23.0.0+.
Audit
Dependencies
eslintrequiredPeer dependency: core linter, required at runtime
prettierrequiredPeer dependency: code formatting, needed to avoid conflicts
typescriptoptionalPeer dependency: required for TypeScript configs
typescript-eslintoptionalPeer dependency: provides TypeScript ESLint rules
eslint-plugin-jestoptionalPeer dependency: needed for Jest test configs
eslint-plugin-mochaoptionalPeer dependency: needed for Mocha test configs
@vitest/eslint-pluginoptionalPeer dependency: needed for Vitest test configs