Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/rvagg/npm-download-counts

Fetch package download counts for packages from the npm registry
https://github.com/rvagg/npm-download-counts

Last synced: 21 days ago
JSON representation

Fetch package download counts for packages from the npm registry

Awesome Lists containing this project

README

        

npm-download-counts
===================

Fetch package download counts for packages from the npm registry
----------------------------------------------------------------

```js
const moment = require('moment')
const downloadCounts = require('npm-download-counts')

const pkg = 'levelup'
const start = moment().subtract('months', 1).toDate() // start date for lookup
const end = new Date() // end date for lookup

let data = await downloadCounts(pkg, start, end)
// `data` is an array of objects with `day` and `count` properties
// each element of the array represents a day in your date range
data.forEach(function (d, i) {
console.log(`On ${d.day}, ${pkg} was downloaded ~${d.count} times`)
})
```

Gives you something like:

```
On 2013-06-15, levelup was downloaded ~91 times
On 2013-06-16, levelup was downloaded ~47 times
On 2013-06-17, levelup was downloaded ~57 times
On 2013-06-18, levelup was downloaded ~141 times
...
```

* To make authenticated calls, supply a token from an npm account as the 4th argument.
* If you supply a callback as the last argument, it won't return a `Promise` and can be used in standard error-first callback style.


Collaborators
-------------

* Rod Vagg [@rvagg] (https://github.com/rvagg)
* Dav Glass [@davglass](https://github.com/davglass)


Licence & copyright
-------------------

Copyright (c) 2014 Rod Vagg

npm-download-counts is licensed under an MIT license. All rights not explicitly granted in the MIT license are reserved. See the included LICENSE file for more details.