Skip to content

🚓 Small library that will find all directories in a rootPath with a package.json file and will run nsp (Node Security Project) on them.

Notifications You must be signed in to change notification settings

canastro/bulk-run-nsp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

build status npm version codecov

bulk-run-nsp

Small library that will find all directories in a rootPath with a package.json file and will run nsp (Node Security Project) on it.

Why?

I had a lot of old projects that I didn't worked for a while and I was running out of free space on my disk. I ran a command that would delete all the node_modules folders in a given rootPath and I "instantly" gained 20GB of free disk.

After that I thought I should have a better way to deal with this and started creating a electron app to manage my workspace. I gathered some features I would like to have and started coding some core modules to later use in the electron app, such as:

How it works?

This module uses query-paths to recursively find all the folders with a package.json file. Then it runs nsp and returns the json format from nsp in a object with the following structure:

{
    "isVulnerable": true,
    "projectPath": "/users/username/project",
    "results": []
}

Being the array results the output of the json formatter of nsp module.

If you pass showLog config as true, then you'll get a command line output in a table like structure, just as the one default formatter from nsp.

Usage

As cli

> npm i -g bulk-run-nsp

# Go to the desired root folder
> bulk-nsp -s

# You can output the log into a file
> bulk-nsp -s > output.txt

As a node module

const bulkRunNsp = require('bulk-run-nsp');

const bulk = bulkRunNsp({ rootPath: '/Users/username/dev', showLog: true });
bulk.on('data', (report) => {
    console.log('report received for: ', report.projectPath);
});

bulk.on('error', (report) => {
    console.log('error received: ', report.error, ' for: ', report.projectPath);
});

bulk.on('end', () => {
    console.log('end');
});

About

🚓 Small library that will find all directories in a rootPath with a package.json file and will run nsp (Node Security Project) on them.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published