1.0.0 • Published 9 years ago

tiny-npm-license v1.0.0

Weekly downloads
-
License
-
Repository
github
Last release
9 years ago

tiny-npm-license

Build Status Build status Coverage Status Dependency Status devDependency Status

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 version

Use npm.

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.