Registry / testing / eslint-config-ts-prefixer

eslint-config-ts-prefixer

JSON →
library4.2.0jsnpmunverified

A zero-extend ESLint flat config for TypeScript projects, providing a curated ruleset focused on runtime safety and import organization via eslint-plugin-import-x. Current stable version is v4.2.0, released in early 2025 with support for ESLint v9/v10 and TypeScript 5. It differs from other shared configs by avoiding any base config inheritance, making all rules explicit for transparency, and heavily emphasizing fixable import sorting and formatting rules. The package migrated from eslint-plugin-import to eslint-plugin-import-x in v4.1.5 and dropped prettier-plugin in v4.0.0, requiring manual prettier setup if needed.

npm install eslint-config-ts-prefixer
INSTALL
IMPORT
SIG · ESLINT-CONFIG-TS-P
E
eslint-config-ts-prefixer
testingjavascriptv4.2.0
harness data pending
Install & Compatibility
Where this runs

No compatibility data collected yet for this library.

Code
Verified usage

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

defineConfig
import { defineConfig } from 'eslint/config'
import { defineConfig } from 'eslint'
defineConfig is re-exported from eslint/config, not eslint directly.
tsPrefixer (default export)
import tsPrefixer from 'eslint-config-ts-prefixer'
import { tsPrefixer } from 'eslint-config-ts-prefixer'
The config is exported as default, not named.
flat config array
export default defineConfig([...tsPrefixer, { /* overrides */ }])
export default defineConfig(tsPrefixer)
tsPrefixer is an array, so spread it inside defineConfig.

Basic setup: import config, spread into defineConfig, set tsconfigRootDir for type-aware rules.

// eslint.config.js import { defineConfig } from 'eslint/config'; import tsPrefixer from 'eslint-config-ts-prefixer'; export default defineConfig([ ...tsPrefixer, { languageOptions: { parserOptions: { tsconfigRootDir: import.meta.dirname, }, }, }, ]); // package.json script // "lint": "eslint . --concurrency=auto --max-warnings=0" // "lint:fix": "eslint . --fix --concurrency=auto --max-warnings=0"
Debug
Known issues
breakingv4.0.0 removed prettier-plugin; you must configure Prettier separately if you still want formatting.
fix
Install prettier and eslint-plugin-prettier manually, or use Prettier standalone.
affects: >=4.0.0
breakingv4.0.0 requires ESLint flat config (eslint.config.js) — legacy .eslintrc not supported.
fix
Migrate to eslint.config.js using flat config format. See ESLint migration guide.
affects: >=4.0.0
breakingv4.1.5 migrated from eslint-plugin-import to eslint-plugin-import-x — custom import rule overrides may need adjustment.
fix
If you rely on old import plugin rules, update rule names to match eslint-plugin-import-x.
affects: >=4.1.5
gotchatsconfigRootDir must be set explicitly to avoid picking up wrong tsconfig from node_modules.
fix
Set parserOptions.tsconfigRootDir to import.meta.dirname (or __dirname in CJS).
affects: >=4.0.0
gotchaThe config does not include any JavaScript-specific rules; only TypeScript files are linted.
fix
Add separate overrides for .js/.mjs files if needed, or use a different config for JS.
affects: >=4.0.0
deprecatedv1.x used .eslintrc format; v4.x is incompatible.
fix
Upgrade to flat config and eslint-config-ts-prefixer v4.
affects: >=4.0.0
Errors
Common errors & fixes
Error: Cannot find module 'eslint-config-ts-prefixer'
eslint cannot resolve the config; missing install or incorrect import path.
fix
Run `npm install --save-dev eslint-config-ts-prefixer` and ensure you import as 'eslint-config-ts-prefixer' (no scope).
TypeError: defineConfig is not a function
Using wrong import for defineConfig (from 'eslint' instead of 'eslint/config').
fix
Import { defineConfig } from 'eslint/config'.
Error: Config array must contain objects or functions, got array
Spreading tsPrefixer array incorrectly inside defineConfig arguments.
fix
Make sure to spread inside an array: defineConfig([...tsPrefixer, ...])
Parsing error: The 'parserOptions.tsconfigRootDir' option must be set when using project service.
tsconfigRootDir not set in user config.
fix
Add languageOptions.parserOptions.tsconfigRootDir: import.meta.dirname
Upgrade
Version history
4.2.0latest on npm
Audit
Dependencies
eslintrequiredPeer dependency: ESLint v9 or v10 required for flat config compatibility.
typescriptrequiredPeer dependency: TypeScript 5+ required for type-aware lint rules.
eslint-plugin-import-xrequiredTransitive dependency used by the config for import organization rules.
eslint-import-resolver-typescriptrequiredTransitive dependency for resolving TypeScript imports.
Agent activity
2 hits · last 30 days
node
2
Resources