lcc

license-compatibility-checker

Check npm dependencies' package.json for license compatibility (aka compliance check) with the current project based on spdx notation and naming conventions.

Showing:

Popularity

Downloads/wk

396

GitHub Stars

60

Maintenance

Last Commit

8mos ago

Contributors

3

Package

Dependencies

2

Size (min+gzip)

6.4KB

License

MIT

Type Definitions

Tree-Shakeable

No?

Categories

Readme

license-compatibility-checker

Check npm dependencies' package.json for license compatibility (aka compliance check) with the current project based on spdx notation and naming conventions.

NPM NPM

Build Status npm version npm license npm download npm download Package Quality Inline docs star this repo fork this repo david dependency david devDependency david optionalDependency david peerDependency npms score Known Vulnerabilities

This is WIP and likely to change but already useable.

Does a simple comparison like Public Domain > Permissive > Weakly Protective > Strongly Protective > Network Protective of the primary dependencies in node_modules (no recursive search). Checks for unlicensed or unknown licenses.

Screenshot with sample data (some licenses changed for demo) Screenshot

Install

npm install license-compatibility-checker -g

or better

npm install license-compatibility-checker --save-dev

or

npm install https://github.com/HansHammel/license-compatibility-checker.git --save-dev

Usage

CLI

In your project folder run

license-compatibility-checker

or

lcc PATH_TO_PACKAGE_JSON

or (win)

.\node_modules\.bin\lcc ..\droppy\package.json c:/l/droppy/node_modules

or (*nix)

./node_modules/.bin/lcc PATH_TO_PACKAGE_JSON PATH_TO_MODULES

etc.

Supports to optional parameters:

  1. path to package json (defaults to ./package.json)
  2. path to node_modules (defaults to ./node_modules)

Paths can be relative to the CWD and/or mixed Win/nix-style

As Module

v0.2.x

var lcc = require('license-compatibility-checker');
var path = require('path');
lcc.check(path.join(process.cwd(),'package.json'), path.join(process.cwd(),"node_modules"),function(/*error*/ err,/*boolean*/ passed,/*string*/ output){
  if (err) console.log(err);
  else if (passed)
  {
    //No license issues found
    console.log(output);
  } else
  { 
    //License issues found 
    console.log(output);
    //process.exit(1);
    //or
    //throw new Error('License issues found');
  }  
});

v0.1.1

var lcc = require('license-compatibility-checker');
var path=require('path');
lcc.check(path.join(process.cwd(),'package.json'), path.join(process.cwd(),"node_modules"));

use without warranty

Honorable Mention

Based on license-compatibility ruby gem by Libraries.io

A License Overview

Licences

Rate & Review

Great Documentation0
Easy to Use0
Performant0
Highly Customizable0
Bleeding Edge0
Responsive Maintainers0
Poor Documentation0
Hard to Use0
Slow0
Buggy0
Abandoned0
Unwelcoming Community0
100
No reviews found
Be the first to rate

Alternatives

No alternatives found

Tutorials

No tutorials found
Add a tutorial