{"id":26052,"library":"osdoc-lint","title":"osdoc-lint","description":"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.","status":"active","version":"1.0.6","language":"javascript","source_language":"en","source_url":"https://github.com/osdoc-dev/osdoc-lint","tags":["javascript","eslint","prettier","stylelint","code style","code lint"],"install":[{"cmd":"npm install osdoc-lint","lang":"bash","label":"npm"},{"cmd":"yarn add osdoc-lint","lang":"bash","label":"yarn"},{"cmd":"pnpm add osdoc-lint","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"Used for Stylelint configuration","package":"@umijs/fabric","optional":false}],"imports":[{"note":"Must use require.resolve() to resolve path correctly in .eslintrc.js","wrong":"extends: ['osdoc-lint/eslint']","symbol":"eslint config","correct":"extends: [require.resolve('osdoc-lint/eslint')]"},{"note":"CommonJS only; spread into .prettierrc.js","wrong":"import { prettier } from 'osdoc-lint'","symbol":"prettier config","correct":"const lint = require('osdoc-lint'); module.exports = { ...lint.prettier }"},{"note":"Stylelint config is from @umijs/fabric, not directly from osdoc-lint","wrong":"extends: ['osdoc-lint/stylelint']","symbol":"stylelint config","correct":"extends: [require.resolve('@umijs/fabric/dist/stylelint')]"}],"quickstart":{"code":"// .eslintrc.js\nmodule.exports = {\n  extends: [require.resolve('osdoc-lint/eslint')],\n  rules: {\n    'jsx-a11y/alt-text': [0],\n  },\n};\n\n// .prettierrc.js\nconst lint = require('osdoc-lint');\nmodule.exports = {\n  ...lint.prettier,\n};\n\n// .stylelintrc.js\nmodule.exports = {\n  extends: [require.resolve('@umijs/fabric/dist/stylelint')],\n};","lang":"javascript","description":"Shows how to extend ESLint config, spread prettier config, and configure Stylelint using osdoc-lint."},"warnings":[{"fix":"Add @umijs/fabric as an explicit dependency or understand it's required.","message":"Stylelint config is not provided by osdoc-lint itself but by @umijs/fabric, which is a transitive dependency.","severity":"gotcha","affected_versions":">=1.0.0"},{"fix":"Use require() syntax; cannot import with ESM.","message":"The package uses CommonJS (require) only; no ESM support.","severity":"deprecated","affected_versions":">=1.0.0"},{"fix":"Use require.resolve('osdoc-lint/eslint') in extends array.","message":"ESLint config path must use require.resolve() to resolve correctly; passing string directly may fail.","severity":"gotcha","affected_versions":">=1.0.0"},{"fix":"Use module.exports = { ...lint.prettier } or Object.assign.","message":"Prettier config must be spread into an object; directly assigning lint.prettier will not work as a config export.","severity":"gotcha","affected_versions":">=1.0.0"}],"env_vars":null,"last_verified":"2026-05-01T00:00:00.000Z","next_check":"2026-07-30T00:00:00.000Z","problems":[{"fix":"Use require.resolve('osdoc-lint/eslint') in the extends array.","cause":"Using a string path without require.resolve() or incorrect module resolution.","error":"Cannot find module 'osdoc-lint/eslint'"},{"fix":"Ensure const lint = require('osdoc-lint'); returns an object with a prettier property.","cause":"Trying to spread lint.prettier incorrectly or lint is undefined.","error":"TypeError: Cannot spread non-iterable instance"},{"fix":"Check rule name and use array format: 'rule-name': [severity, options].","cause":"Rule name misspelled or configuration format wrong.","error":"Configuration for rule 'jsx-a11y/alt-text' is invalid"},{"fix":"Install osdoc-lint as a dev dependency and use require.resolve().","cause":"Missing dependency or incorrect file path.","error":"Failed to load config \"osdoc-lint/eslint\" to extend from"}],"ecosystem":"npm","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}