browserify-licenses

    1.5.1 • Public • Published

    Browserify License Extractor

    Build Status NPM Version License Dependencies Dev Dependencies Greenkeeper badge

    Extracts licenses of third party modules used in a browserify bundle

    Browserify License Extractor list all files that will be included in a Browerify bundle to determines which third party modules are really bundled, and then it extracts the corresponding licenses to various formats.

    Install

    npm install -g browserify-licenses
    

    Usage

    Usage: brlicenses [options]
    
    Options:
        --browserify, -b  Extract licenses used in a bundle using Browserify to find
                          included modules (this option can be ommited)
        --webpack, -w     Extract licenses from a Webpack profile file
        --modules, -m     Extract licenses of the given modules
        --json, -j        Extract licenses of the given JSON files (previously
                          generated with the --format=json option)
        --format, -f      Output format [choices: "table", "short", "full", "json"]
                          [default: "table"]
        --output, -o      Output file (print to stdout by default)
        --ignore, -i      Ingore the given modules in the output
        --version, -v     Show version number
        --help, -h        Show help
    

    Examples

    brlicenses app/index.js
    brlicenses --browserify app/index.js  # equivalent to the previous one
    
    brlicenses --modules lodash q abitbol
    
    brlicenses app/index.js \
        --json additional-licenses.json \
        --format=full \
        --output=CREDITS.txt
    

    Example 2: Webpack

    webpack --profile --json > profile.json
    brlicenses --webpack profile.json
    

    Sample Output

    Table formatting (to get a quick overview):

    brlicenses app/index.js
    
    ┌─────────────┬─────────┬──────────────┬──────────────┐
    │ Module Name │ Version │ License      │ License File │
    ├─────────────┼─────────┼──────────────┼──────────────┤
    │ abitbol     │ 1.0.4   │ BSD-3-Clause │ Yes          │
    │ keyboardjs  │ 0.4.3   │ BSD License  │ Yes          │
    │ lodash      │ 4.13.1  │ MIT          │ Yes          │
    │ photonui    │ 1.5.0   │ BSD-3-Clause │ Yes          │
    │ stonejs     │ 2.2.0   │ BSD-3-Clause │ Yes          │
    │ uuid        │ 2.0.2   │ MIT          │ Yes          │
    └─────────────┴─────────┴──────────────┴──────────────┘
    
    6 modules
    

    Full output includes complete license:

    brlicenses --format=full app/index.js
    
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    abitbol v1.0.4 - License BSD-3-Clause
    downloaded from <https://www.npmjs.com/package/abitbol>
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    Copyright (c) 2015, Wanadev <http://www.wanadev.fr/>
    All rights reserved.
    
    Redistribution and use in source and binary forms, with or without
    modification, are permitted provided that the following conditions are met:
        * Redistributions of source code must retain the above copyright
        notice, this list of conditions and the following disclaimer.
        * Redistributions in binary form must reproduce the above copyright
        notice, this list of conditions and the following disclaimer in the
        documentation and/or other materials provided with the distribution.
        * Neither the name of Wanadev nor the
        names of its contributors may be used to endorse or promote products
        derived from this software without specific prior written permission.
    
    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
    ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
    WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
    DISCLAIMED. IN NO EVENT SHALL WANADEV BE LIABLE FOR ANY
    DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
    (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
    LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
    ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
    (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
    SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    
    
    
    
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    keyboardjs v0.4.3 - License BSD License
    downloaded from <https://www.npmjs.com/package/keyboardjs>
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    Copyright 2011 Robert Hurst. All rights reserved.
    
    [... output truncated for this example ...]
    

    Changelog

    • 1.5.1: Update dependencies
    • 1.5.0: Add Webpack support. Update Browserify to v17.x
    • 1.4.8: Update dependencies
    • 1.4.7: Fixes issue with newer node version (#41)
    • 1.4.6: Handle namespaced packages in browserify source ("@namespace/package"), updates dependencies
    • 1.4.5: Fixes version parsing with npm 5, updates dependencies
    • 1.4.4: Updates Yargs and Table deps
    • 1.4.3: Updates Browserify to 14.0.0
    • 1.4.2: Works on Microsoft Windows™ system
    • 1.4.1: Updates yargs dependency

    Install

    npm i browserify-licenses

    DownloadsWeekly Downloads

    63

    Version

    1.5.1

    License

    BSD-3-Clause

    Unpacked Size

    26.9 kB

    Total Files

    21

    Last publish

    Collaborators

    • wanadmin
    • flozz