{"library":"npm-pkg-lint","title":"npm-pkg-lint","description":"Opinionated linter for NPM package tarball and package.json metadata, enforcing strict standards beyond spec validity. Current stable version is v4.6.5, with regular monthly bugfix releases. Key differentiators: focuses on production-quality packaging (disallowed files, dependency checks, exports order) rather than code style, integrates as GitHub Action, and can lint directly from tarballs or stdin. Supports Node.js ^20.18 || >= 22.16. Commonly used in CI pipelines to enforce consistent publishing practices.","language":"javascript","status":"active","last_verified":"Fri May 01","install":{"commands":["npm install npm-pkg-lint"],"cli":{"name":"npm-pkg-lint","version":null}},"imports":["import { npmPkgLint } from 'npm-pkg-lint'","import { rules } from 'npm-pkg-lint'","import type { LintOptions } from 'npm-pkg-lint'"],"auth":{"required":false,"env_vars":[]},"quickstart":{"code":"import { npmPkgLint } from 'npm-pkg-lint';\n\nconst options = {\n  pkgfile: './package.json',\n  tarball: './my-pkg-1.2.3.tgz',\n};\n\nconst result = await npmPkgLint(options);\n\nif (result.valid) {\n  console.log('Package is valid!');\n} else {\n  console.error('Lint errors:', result.errors);\n  process.exit(1);\n}","lang":"typescript","description":"Demonstrates programmatic usage: lint a tarball against its package.json, check validity, and exit with error if invalid.","tag":null,"tag_description":null,"last_tested":null,"results":[]},"compatibility":null}