{"id":26018,"library":"npm-package-json-lint-config-tc","title":"npm-package-json-lint-config-tc","description":"Shareable configuration for npm-package-json-lint (v10) enforcing TC's project conventions on package.json files. Current stable version: 10.0.2. Release cadence: follows major versions of underlying linter. Key differentiators: opinionated rules optimized for TC projects, strict requirements on license, version, and repository fields. Requires Node >=22 and npm-package-json-lint as a peer dependency.","status":"active","version":"10.0.2","language":"javascript","source_language":"en","source_url":"https://github.com/tclindner/npm-package-json-lint-config-tc","tags":["javascript","lint","linter","package.json","audit","auditor","npm-package-json-lint","npm-package-json-lintconfig","npm-package-json-lint-config"],"install":[{"cmd":"npm install npm-package-json-lint-config-tc","lang":"bash","label":"npm"},{"cmd":"yarn add npm-package-json-lint-config-tc","lang":"bash","label":"yarn"},{"cmd":"pnpm add npm-package-json-lint-config-tc","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"peer dependency required to lint package.json files","package":"npm-package-json-lint","optional":false}],"imports":[{"note":"Config is used via extends in a JSON config file, not imported directly in code.","wrong":"require('npm-package-json-lint-config-tc')","symbol":"config","correct":"extends: 'npm-package-json-lint-config-tc' in .npmpackagejsonlintrc.json"},{"note":"The package exports a plain object; both ESM and CJS work, but the typical usage is via 'extends' in config file.","wrong":"const config = require('npm-package-json-lint-config-tc')","symbol":"config","correct":"import config from 'npm-package-json-lint-config-tc'"},{"note":"Override rules in your own config file; do not mutate the shared config object.","wrong":"Modifying the config object directly","symbol":"rules","correct":"Use 'rules' in .npmpackagejsonlintrc.json to override specific rules"}],"quickstart":{"code":"// .npmpackagejsonlintrc.json\n{\n  \"extends\": \"npm-package-json-lint-config-tc\"\n}\n\n// Then run:\n// npx npm-package-json-lint . --config .npmpackagejsonlintrc.json\n","lang":"json","description":"Extend the shareable config in .npmpackagejsonlintrc.json and run the linter."},"warnings":[{"fix":"Upgrade Node.js to v22 or later.","message":"Node 18 dropped in v10.0.0","severity":"breaking","affected_versions":">=10.0.0"},{"fix":"Ensure npm-package-json-lint@^10.0.0 is installed.","message":"Peer dependency npm-package-json-lint must be v10.x for config v10","severity":"breaking","affected_versions":">=10.0.0"},{"fix":"Upgrade Node.js to v18 or later for v8-v9, v20+ for v10.","message":"Node 16 dropped in v8.0.0","severity":"breaking","affected_versions":">=8.0.0"},{"fix":"Upgrade Node.js to v16 or later (v18+ recommended).","message":"Node 14 dropped in v7.0.0","severity":"breaking","affected_versions":">=7.0.0"},{"fix":"Use ESM imports if possible, or stick to 'extends' in config file.","message":"Using require() in CJS is still supported but may be deprecated in future","severity":"deprecated","affected_versions":"*"},{"fix":"Use JSON format for the config file.","message":"Config only works with .npmpackagejsonlintrc.json, not .js or .yaml","severity":"gotcha","affected_versions":"*"}],"env_vars":null,"last_verified":"2026-05-01T00:00:00.000Z","next_check":"2026-07-30T00:00:00.000Z","problems":[{"fix":"Run: npm install --save-dev npm-package-json-lint npm-package-json-lint-config-tc","cause":"Missing or incorrect peer dependency npm-package-json-lint or config not installed.","error":"Error: Cannot find module 'npm-package-json-lint-config-tc'"},{"fix":"Check rule names in npm-package-json-lint docs and ensure your .npmpackagejsonlintrc.json has correct structure.","cause":"Override rule syntax is wrong; must be a valid npm-package-json-lint rule.","error":"Error: Configuration for rule \"valid-values-author\" is invalid"},{"fix":"Ensure .npmpackagejsonlintrc.json is valid JSON and contains: { \"extends\": \"npm-package-json-lint-config-tc\" }","cause":"Config file may be misformatted or missing quotes.","error":"The \"extends\" value \"npm-package-json-lint-config-tc\" is not a valid string or array."},{"fix":"Install compatible version: npm install npm-package-json-lint@^10.0.0","cause":"Installed npm-package-json-lint version does not satisfy peer dependency.","error":"npm ERR! code ERESOLVE\nnpm ERR! Could not resolve dependency: peer npm-package-json-lint@\"^10.0.0\""}],"ecosystem":"npm","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}