Get into a new directly, after typing those three commands:
npm install underscore npm install lodash npm install express I get a node_modules directory with many packages:
$ ls node_modules accepts cookie-signature encodeurl forwarded lodash mime-db parseurl send underscore array-flatten debug escape-html fresh media-typer mime-types path-to-regexp serve-static unpipe content-disposition depd etag http-errors merge-descriptors ms proxy-addr setprototypeof utils-merge content-type destroy express inherits methods negotiator qs statuses vary cookie ee-first finalhandler ipaddr.js mime on-finished range-parser type-is While using npm list, I can get a tree strcture:
$ npm list /tmp/play/npm ├─┬ [email protected] │ ├─┬ [email protected] │ │ ├─┬ [email protected] │ │ │ └── [email protected] │ │ └── [email protected] │ ├── [email protected] │ ├── [email protected] │ ├── [email protected] │ ├── [email protected] │ ├── [email protected] │ ├─┬ [email protected] │ │ └── [email protected] │ ├── [email protected] │ ├── [email protected] │ ├── [email protected] │ ├── [email protected] │ ├─┬ [email protected] │ │ ├── [email protected] │ │ └── [email protected] │ ├── [email protected] │ ├── [email protected] │ ├── [email protected] │ ├─┬ [email protected] │ │ └── [email protected] │ ├── [email protected] │ ├── [email protected] │ ├─┬ [email protected] │ │ ├── [email protected] │ │ └── [email protected] │ ├── [email protected] │ ├── [email protected] │ ├─┬ [email protected] │ │ ├── [email protected] │ │ ├─┬ [email protected] │ │ │ ├── [email protected] │ │ │ └── [email protected] │ │ └── [email protected] │ ├── [email protected] │ ├─┬ [email protected] │ │ └── [email protected] │ ├── [email protected] │ └── [email protected] ├── [email protected] └── [email protected] My question is: from all those dependencies, how does npm list know which ones are my direct dependencies such as undersocre, lodash and express?
note: I don't have a package.json file.