ko-lint-config
raw JSON → 2.2.22 verified Fri May 01 auth: no javascript
A shared lint configuration package from DTStack that bundles ESLint, Stylelint, and Prettier rules into a single dependency. Version 2.2.22 requires Node >=14 and ships TypeScript types. It enforces a specific code style (4-space indent, single quotes, no forced semicolons, optional trailing commas) designed for team consistency. Releases follow the ko monorepo's cadence. Differentiators: no configuration overhead, automatic formatting via pnpm lint-fix, and pre-defined rules that discourage overriding to maintain group style guide compliance.
Common errors
error Error: Cannot find module 'ko-lint-config' ↓
cause ko-lint-config not installed or require.resolve used without installing.
fix
Run
npm install ko-lint-config --save-dev and ensure node_modules contains it. error ESLint: Configuration for rule "indent" is invalid ↓
cause Overriding rules from ko-lint-config can cause incompatibility.
fix
Remove custom rule overrides and rely solely on ko-lint-config's defaults.
error Error: No configuration provided for stylelint ↓
cause Stylelint config not loaded; missing require.resolve for .stylelintrc.
fix
Add
extends: [require.resolve('ko-lint-config/.stylelintrc')] to your .stylelintrc.js error Error: Could not resolve 'ko-lint-config/.prettierrc' ↓
cause Using require.resolve on .prettierrc file when it's not a valid module export.
fix
Use
const prettier = require('ko-lint-config/.prettierrc') without require.resolve. Warnings
gotcha Do not use string literal 'ko-lint-config' in extends; use require.resolve() to avoid module resolution failures. ↓
fix Use require.resolve('ko-lint-config') in extends array.
deprecated The package expects ESLint <9 (flat config not supported). If you use ESLint 9+, this config will not work. ↓
fix Stick with ESLint 8 or migrate to a flat config manually.
breaking Major version bumps may change lint rules significantly without warning. Always review changelog before upgrading. ↓
fix Pin version and test lint output after upgrade.
gotcha Prettier config is spread, not extended. Using extends will cause errors. ↓
fix Use const prettier = require('ko-lint-config/.prettierrc'); module.exports = { ...prettier }
Install
npm install ko-lint-config yarn add ko-lint-config pnpm add ko-lint-config Imports
- ko-lint-config (ESLint config) wrong
module.exports = { extends: ['ko-lint-config'] }correctmodule.exports = { extends: [require.resolve('ko-lint-config')] } - Prettier config wrong
module.exports = { extends: [require.resolve('ko-lint-config/.prettierrc')] }correctconst prettier = require('ko-lint-config/.prettierrc'); module.exports = { ...prettier } - Stylelint config wrong
module.exports = { extends: ['ko-lint-config/.stylelintrc'] }correctmodule.exports = { extends: [require.resolve('ko-lint-config/.stylelintrc')] }
Quickstart
pnpm add ko-lint-config -D
// .eslintrc.js
module.exports = {
extends: [require.resolve('ko-lint-config')],
}
// .prettierrc.js
const prettier = require('ko-lint-config/.prettierrc')
module.exports = { ...prettier }
// package.json "scripts"
{
"lint": "npx eslint './src/**/*.ts' './src/**/*.tsx'",
"lint-fix": "npx eslint './src/**/*.ts' './src/**/*.tsx' --fix",
"lint-css": "npx stylelint './src/**/*.scss' './src/**/*.css'",
"lint-css-fix": "npx stylelint './src/**/*.scss' './src/**/*.css' --fix"
}
// Then run
pnpm lint-fix