licensewatch
v2.0.1
Published
Recurses a given node_modules directory to fetch all npm package licenses
Downloads
4
Readme
LicenseWatch
What is this?
This module reads the node_modules
directory of a given
path and fetches all licenses from reading each module's
package.json
and aggregates their counts into a hashmap
object of licenses.
Implementation
Current implementation is with an Observable pattern so consumers need to add listeners to events the module emits.
Previous version of this module includes a Promises-based implementation and complete code coverage.
Installation
yarn add licensewatch
Usage
const LicenseWatch = require('licensewatch')
const licenses = new LicenseWatch('node_modules/**/package.json')
licenses.fetch()
let licensesCount = 0
licenses.on('files', (files) => {
console.log('files processed' + ' - ' + files.length + ' - ' + files[0])
})
licenses.on('license', () => {
licensesCount++
})
licenses.on('licenses', (licenses) => {
console.log(licenses.length)
})
licenses.on('licensesSummary', (licenses) => {
console.log(licenses)
})
licenses.on('error', (error) => {
console.log('errors mate, from down under')
console.log(error)
})
Tests
Project tests:
yarn run test
Project linting:
yarn run lint
Coverage
yarn run test:coverage
Commit
The project uses the commitizen tool for standardizing changelog style commit messages so you should follow it as so:
git add . # add files to staging
npm run commit # use the wizard for the commit message