osdoc-lint
raw JSON → 1.0.6 verified Fri May 01 auth: no javascript
A simple code style lint utility that provides shared configurations for ESLint, Prettier, and Stylelint, designed to enforce consistent code quality. Current stable version is 1.0.6. It allows extending configurations and overriding rules. Differentiators include a single dependency approach and support for ESLint, Prettier, and Stylelint integration, though it relies on @umijs/fabric for Stylelint configuration. Release cadence is not documented; appears low activity.
Common errors
error Cannot find module 'osdoc-lint/eslint' ↓
cause Using a string path without require.resolve() or incorrect module resolution.
fix
Use require.resolve('osdoc-lint/eslint') in the extends array.
error TypeError: Cannot spread non-iterable instance ↓
cause Trying to spread lint.prettier incorrectly or lint is undefined.
fix
Ensure const lint = require('osdoc-lint'); returns an object with a prettier property.
error Configuration for rule 'jsx-a11y/alt-text' is invalid ↓
cause Rule name misspelled or configuration format wrong.
fix
Check rule name and use array format: 'rule-name': [severity, options].
error Failed to load config "osdoc-lint/eslint" to extend from ↓
cause Missing dependency or incorrect file path.
fix
Install osdoc-lint as a dev dependency and use require.resolve().
Warnings
gotcha Stylelint config is not provided by osdoc-lint itself but by @umijs/fabric, which is a transitive dependency. ↓
fix Add @umijs/fabric as an explicit dependency or understand it's required.
deprecated The package uses CommonJS (require) only; no ESM support. ↓
fix Use require() syntax; cannot import with ESM.
gotcha ESLint config path must use require.resolve() to resolve correctly; passing string directly may fail. ↓
fix Use require.resolve('osdoc-lint/eslint') in extends array.
gotcha Prettier config must be spread into an object; directly assigning lint.prettier will not work as a config export. ↓
fix Use module.exports = { ...lint.prettier } or Object.assign.
Install
npm install osdoc-lint yarn add osdoc-lint pnpm add osdoc-lint Imports
- eslint config wrong
extends: ['osdoc-lint/eslint']correctextends: [require.resolve('osdoc-lint/eslint')] - prettier config wrong
import { prettier } from 'osdoc-lint'correctconst lint = require('osdoc-lint'); module.exports = { ...lint.prettier } - stylelint config wrong
extends: ['osdoc-lint/stylelint']correctextends: [require.resolve('@umijs/fabric/dist/stylelint')]
Quickstart
// .eslintrc.js
module.exports = {
extends: [require.resolve('osdoc-lint/eslint')],
rules: {
'jsx-a11y/alt-text': [0],
},
};
// .prettierrc.js
const lint = require('osdoc-lint');
module.exports = {
...lint.prettier,
};
// .stylelintrc.js
module.exports = {
extends: [require.resolve('@umijs/fabric/dist/stylelint')],
};