npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

dependents-cli

v1.0.0

Published

CLI for listing an npm module's dependent projects and their download stats.

Downloads

23

Readme

dependents-cli NPM version NPM monthly downloads NPM total downloads

CLI for listing an npm module's dependent projects and their download stats.

You might also be interested in module-dependents.

Install

Install globally with npm

$ npm install --global dependents-cli

Usage

Once installed globally, there will be a dependents command that can be run from the command line.

To see all the dependents for a module, specify the module name after the dependents command like this:

$ dependents base

This will output a JavaScript array containing each dependent as an object with name and dependency version properties. The dependency version property key will be the specified module name with -version after it. So base-version for the command specified above.

Example output from running $ dependents base:

image

Formatting

Use the --format option to format the results as a table (this is the default).

Run the following command to the dependents formatted as a table:

$ dependents base --format

image

You can also include the download counts when using formatting:

$ dependents base --downloads --format

image

If you need to use the results as a JSON object, use the --format command with json after it:

$ dependents base --format json
[
  { "name": "base-app", "base-version": "^0.11.1" },
  { "name": "base-reporter", "base-version": "^0.11.0" },
  { "name": "benchmarked", "base-version": "^0.8.1" },
  { "name": "boilerplate", "base-version": "^0.11.1" },
  { "name": "expand-files", "base-version": "^0.11.1" },
  { "name": "expand-target", "base-version": "^0.11.1" },
  { "name": "npm-api", "base-version": "^0.8.1" },
  { "name": "saffronapp", "base-version": "file:packages/base" },
  { "name": "scaffold", "base-version": "^0.11.1" },
  { "name": "templates", "base-version": "^0.11.1" },
  { "name": "verbiage", "base-version": "^0.8.1" },
  { "name": "vinyl-collection", "base-version": "^0.11.0" },
  { "name": "vinyl-item", "base-version": "^0.8.1" }
]

This can be output to a json file using the bash > character:

$ dependents base --format json > base-dependents.json

Use this with the --downloads option to be able to use the json data and do your own sorting and filtering if necessary.

$ dependents base --format json --downloads > base-dependents.json

Downloads

To include the download counts of each of the dependents, use the --downloads option. This will add a downloads object to each dependent with the total and last30 (last 30 days) download counts:

$ dependents base --downloads --format json
[
  { "name": "templates", "base-version": "^0.11.1", "downloads": { "total": 124383, "last30": 14517 } },
  { "name": "benchmarked", "base-version": "^0.8.1", "downloads": { "total": 528830, "last30": 5301 } },
  { "name": "vinyl-item", "base-version": "^0.8.1", "downloads": { "total": 6045, "last30": 5019 } },
  { "name": "expand-target", "base-version": "^0.11.1", "downloads": { "total": 4341, "last30": 577 } },
  { "name": "scaffold", "base-version": "^0.11.1", "downloads": { "total": 4212, "last30": 532 } },
  { "name": "boilerplate", "base-version": "^0.11.1", "downloads": { "total": 8845, "last30": 478 } },
  { "name": "base-app", "base-version": "^0.11.1", "downloads": { "total": 1091, "last30": 471 } },
  { "name": "expand-files", "base-version": "^0.11.1", "downloads": { "total": 7235, "last30": 399 } },
  { "name": "npm-api", "base-version": "^0.8.1", "downloads": { "total": 629, "last30": 52 } },
  { "name": "base-reporter", "base-version": "^0.11.0", "downloads": { "total": 103, "last30": 16 } },
  { "name": "vinyl-collection", "base-version": "^0.11.0", "downloads": { "total": 101, "last30": 15 } },
  { "name": "verbiage", "base-version": "^0.8.1", "downloads": { "total": 77, "last30": 7 } },
  { "name": "saffronapp", "base-version": "file:packages/base", "downloads": { "total": 112, "last30": 5 } }
]

When using the --downloads option, the list is sorted by the downloads.last30 property so the most used dependents will be found at the top.

About

Related projects

Contributing

Pull requests and stars are always welcome. For bugs and feature requests, please create an issue.

Contributors

| Commits | Contributor |
| --- | --- |
| 18 | doowb |
| 1 | panva |

Building docs

(This project's readme.md is generated by verb, please don't edit the readme directly. Any changes to the readme must be made in the .verb.md readme template.)

To generate the readme, run the following command:

$ npm install -g verbose/verb#dev verb-generate-readme && verb

Running tests

Running and reviewing unit tests is a great way to get familiarized with a library and its API. You can install dependencies and run tests with the following command:

$ npm install && npm test

Author

Brian Woodward

License

Copyright © 2017, Brian Woodward. Released under the MIT License.


This file was generated by verb-generate-readme, v0.6.0, on June 21, 2017.