Skip to content

Automatically add project dependencies to npm's package.json

License

Notifications You must be signed in to change notification settings

bitjerry/npmpkgx

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

npmpkgx


GitHub package.json version NPM Version NPM npm

Automatically add project dependencies to npm's package.json

Read in other languages: English | 简体中文

What can it do?


There are pip+pipreqs packaging dependencies in python, and npm+npmpkgx in nodejs
If you fork someone else's project and find that the missing module cannot be run, then the online mode will complete it for you
If your project needs to be ported to other environments, then local mode will suit you

How does it work?


It has two working modes

  1. Local mode: import modules in the scan code -> match global modules -> add to the project's package.json
  2. Online mode: import modules in the scan code -> match the registry module -> add to the project's package.json

Install


Install npmpkgx global from npm

$ npm install npmpkgx -g

Usage


$ npmpkgx -h  
npmpkgx - Automatically add project dependencies to npm's package.json

Usage:
    npmpkgx [options] [<path>]

Arguments:
    <path>                      The path to the directory containing the application files for the package.json file
                                 generated by npm

Options:
    -s, --save                  Add package to dependencies(default)
    -d, --save-dev              Add package to devDependencies
    -o, --save-optional         Add package to optionalDependencies
    -p, --save-prefix <prefix>  Customize the prefix(^|~|<|>|=) for package version
    --encoding <charset>        Use encoding parameter for package.json write. The default value of charset is utf-8
                                 if not specified
    --registry <url?>           Switch online mode, it will search the nodejs registry. The default value of url is
                                'https://registry.npmjs.org' if not specified

Example


$ npmpkgx ./ --registry
The following packages have been added to the dependencies
{ 'npm-pkgs': '^2.0.1' }
The following packages are not added to the dependencies
{
  fs: '*',
  path: '*',
  https: '*',
  './cmd/command': '*',
  'npm-pkgxxx': '*'
}

$ npm install
...

Notice


  1. Currently only modules imported by require() are supported, and import may be supported in the future
  2. The addition method is append, existing packages will not be added, nodejs native modules will not be added, and custom modules will not be added
  3. Options line arguments do not support =

Copyright


MIT © bitjerry

Releases

No releases published

Packages

No packages published