# npm-auto-dep

> Tool that searches your project's source code for all requires of external modules. Interactively adds dependencies to package.json based on their metadata.

Latest version **0.1.2** (published 2014-12-08) · X11 License license · 0 weekly downloads

## Install

```sh
npm install npm-auto-dep
pnpm add npm-auto-dep
yarn add npm-auto-dep
bun add npm-auto-dep
```

Provides the command `npm-auto-dep`.

## Health

**Score 15/100 (F)** — status: abandoned.

Positive: no vulnerabilities.

Warnings: low downloads; no types; no esm support; pre 1.0.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 0.1.2 |
| Published | 2014-12-08 |
| First published | 2013-11-21 |
| Weekly downloads | 0 |
| License | X11 License |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 4 |
| Known vulnerabilities | 0 (+2 in 1 direct dependencies) |
| Install scripts | no |
| Author | Christopher Chrapka |
| Maintainers | ohjeez |
| Keywords | node, npm, node_modules, dependencies, metadata, dev, developer, modules, require, interactive, tool |

## Links

- npm: https://www.npmjs.com/package/npm-auto-dep
- Repository: https://github.com/OhJeez/npm-auto-dep
- Issues: https://github.com/OhJeez/npm-auto-dep/issues
- npm.io page: https://npm.io/package/npm-auto-dep

## Dependencies (4)

- [when](https://npm.io/package/when.md) ~3.1.0
- [yargs](https://npm.io/package/yargs.md) ~1.2.6
- [colors](https://npm.io/package/colors.md) ~0.6.2
- [semver](https://npm.io/package/semver.md) ~2.3.1

## Alternatives

- [@expo/fingerprint](https://npm.io/package/@expo/fingerprint.md) — 6.2M weekly downloads
- [@azure/monitor-opentelemetry-exporter](https://npm.io/package/@azure/monitor-opentelemetry-exporter.md) — 850.0K weekly downloads
- [@azure/monitor-opentelemetry](https://npm.io/package/@azure/monitor-opentelemetry.md) — 624.0K weekly downloads
- [@posthog/ai](https://npm.io/package/@posthog/ai.md) — 423.3K weekly downloads
- [fakefilter](https://npm.io/package/fakefilter.md) — 63.9K weekly downloads

## Recent versions

- 0.1.2 (latest) — 2014-12-08
- 0.1.1 — 2013-11-22
- 0.1.0 — 2013-11-21

## README

npm-auto-dep
============

Tool that searches your node.js module source code for all `require`s of external modules.
Interactively adds dependencies to package.json based on their metadata.

##Installation

    npm install -g npm-auto-dep

##Usage
Works only on linux/unix/(probably MacOS). Won't probably ever work on Windows out-of-the-box.[1]

Change directory to main directory of your module sources. Run

    npm-auto-dep

Or you can just

    npm-auto-dep /home/kitten_killer/dev/src/node/MAD_protocols

Which will (try to) find all it's dependencies and add them to it's package.json .

Module must be initialized first. Best with `npm init`.

`npm-auto-dep` will ask you what to do with every single module it found, like this:

    Add package when [2.5.1] from git repo: https://github.com/cujojs/when
    [N/y/v/=/>/~/r/c/h]:

If you enter `h` it will display a hint:

    [No/yes/version/=version/>=version/~version/repository/custom/help]

Where:
* No - (default behaviour) dependency will not be changed. If it already is in dependencies, it will stay the same way
* yes - dependecy will be added, but without version information. That is any version will satisfy.
* version - custom version specification. You will be asked to enter semver version range.[2]
* =version - exactly the module version installed will be requested.
* >=version - same or higher version then one installed will be requested
* ~version - similar version will be requested. See also semver range spec.
* repository - npm is told to clone this dependency from metadata specified repository. Currently only git is supported.
* custom - enter whatever you like, as long as npm can understand it. (Currently `npm-auto-dep` does not validate that)
* help - display hints and ask again what to do.

After you are done you will have to confirm or reject changes, like that:

    Old dependencies:
    { when: '>=2.5.1',
      semver: '>=2.2.1',
      optimist: '>=0.6.0',
      colors: '>=0.6.2' }
    
    New dependencies:
    { when: '>=2.5.0 <3.0.0',
      semver: '>=2.2.1',
      optimist: '>=0.6.0',
      colors: '>=0.6.2' }
    Overwrite dependencies in file /home/kitten_killer/dev/src/npm-auto-dep/package.json ?
    [y/n]: 
 
[1]: You can get grep and find from cygwin or something and add them to your PATH.
It could work, unless some strange CLI argument parsing ensues. Anyway, if you are
a developer able and wiling to do it, you should start using Linux by this point.

[2]: Like that:

    Add package when [2.5.1] from git repo: https://github.com/cujojs/when
    Already in dependencies in version: >=2.5.1
    [N/y/v/=/>/r/h]: v
    Enter version specification (see man 7 semver)
    > >=2.5.0 <3.0.0

---
_Source: https://npm.io/package/npm-auto-dep · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
