What is publint?

publint lints npm packages for packaging errors, ensuring maximum compatibility across environments. This means that consumers of your package can safely run your code in any platform, e.g. Vite, Webpack, Rollup, Node.js, etc.

A full list of rules can be found at the rules page .

How it works

When linting an npm package, the site would download the package tarball locally from the npm registry, then a web worker will run the publint CLI against the files. For larger packages, it may take a while to download and lint.

Unlike npm install, the site would only download the package itself without it's dependencies, as that's sufficient for the linting process.

Use locally

In the root of your library directory, run npx publint! If you're an end-user and would like to lint the dependencies you use instead, run npx publint deps. Use npx publint --help to see the full list of options.


Found a bug? Suggest a new feature? Head over to https://github.com/bluwy/publint!