grunt-nice-package

Opinionated package.json validator

npm install grunt-nice-package
7 downloads in the last day
14 downloads in the last week
213 downloads in the last month

grunt-nice-package

Opinionated package.json validator

NPM info

Build status dependencies endorse

Install

npm install grunt-nice-package --save-dev

Once the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:

grunt.loadNpmTasks('grunt-nice-package');
grunt.initConfig({
  'nice-package': {
    all: {
      options: {
        // make sure package.json ends with \n\n, default false
        blankLine: true|false,
        version: function (value) {
          // strict version number validation
          return (/\d{1,2}\.\d{1,2}\.\d{1,2}/).test(value);
        }
      }
    }
  }
});

Alternative: default options

You can load the task with default options without specifying the configuration object

grunt.loadNpmTasks('grunt-nice-package');
grunt.registerTask('default', ['nice-package']);

Validator functions

Please return true if the check passes from custom validation functions.

After the property validators pass, package.json is further checked using package-json-validator by Nick Sullivan. It will check the required properties, and provide suggestions for the recommended ones.

Options

You can define a validation function for any property of the package.json, by default the validation will check:

  • name
  • version
  • description
  • license or licenses
  • keywords (array of strings)

For complete list see nice_package.js for details.

Small print

Author: Gleb Bahmutov © 2013 @bahmutov glebbahmutov.com

License: MIT - do anything with the code, but don't blame me if it does not work.

Spread the word: tweet, star on github, etc.

Support: if you find any problems with this module, email / tweet / open issue on Github

npm loves you