node package manager


npmlint Build Status

Lint your npm package

Makes sure your package is unicorn good.

WIP: This is a code dump of something I made 2 years ago, but never had the time to finish. There are lots of things that could have been done better, so I'd like to improve the core before beginning to accept rules. It's also incomplete and lots of bugs right now.


$ npm install --global npmlint


Go to the package you want to lint and run npmlint.


$ npm install --save npmlint
const npmlint = require('npmlint');
//=> ['suggestion', 'another suggestion'] 


You can try it out by cd'ing into the test folder and running ../cli.js

Creating rules

Rules are located in a rules directory. These are loaded automatically.

A rule is initiated with an object containing:

  • cwd: the current working directory
  • pkg: the target package' package.json

It's expected to return an object or an array of object containing:

  • name: a slug name for the rule
  • severity: info, warn, error. Use your best judgement
  • message: a message describing the violation


MIT © Sindre Sorhus