tiny-npm-license
A Node module to create a tiny JavaScript license comment from package.json data
var tinyNpmLicense = require('tiny-npm-license');
var pkg = require('./package.json');
tinyNpmLicense(pkg);
//=>
/*!
* tiny-npm-license | MIT (c) Shinnosuke Watanabe
* https://github.com/shinnn/tiny-npm-license
*/
Installation
npm install tiny-npm-license
API
var tinyNpmLicense = require('tiny-npm-license');
tinyNpmLicense(packageData,[ options])
packageData: Object
options: Object
Return: String
It takes an object of package.json data, and returns a string of JavaScript block comment which represents the license of the package.
tinyNpmLicense({name: 'foo', author: 'John Smith'});
//=>
/*!
* foo | (c) John Smith
*/
It normalizes the data with normalize-package-data before creating the comment.
tinyNpmLicense({name: 'foo', repository: 'bar/baz'});
//=>
/*!
* foo
* https://github.com/bar/baz
*/
options.strict
Type: Boolean
Default: false
Activate strict validation of normalize-package-data.
tinyNpmLicense({name: ' foo'}, {strict: true}); // Error: Invalid name: " foo"
option.lastNewline
Type: Boolean
Default: true
Setting this option false
removes the last newline from the result.
var json = {name: 'foo'};
tinyLicense(json); //=> '/*!\n * foo\n*/\n'
tinyLicense(json, {lastNewline: false}); //=> '/*!\n * foo\n*/'
CLI
You can use this module as a CLI tool by installing it globally.
npm install -g tiny-npm-license
Usage
Usage1: tiny-npm-license <json file path>
Usage2: cat <json file path> | tiny-npm-license
Options:
--strict, -s Validate the data
--help, -h Print usage information
--version, -v Print version
License
Copyright (c) 2014 Shinnosuke Watanabe
Licensed under the MIT License.