Public technical data explorers

Software Adoption Explorer

Open-source usage signals: weekly downloads, growth and version adoption for npm, PyPI, crates.

npm /downloads/range/…, pypistats /overall or crates.io /crates/<name>/downloads.

npm /versions/<pkg>/last-week, or crates.io /crates/<name> (maps version ids to numbers).

Try an example: left-pad on npm, 1 June – 27 September 2026 (pasted API JSON)

How it works

Fetches public download statistics for an npm, PyPI or crates.io package, aggregates them into weekly totals with 4-week growth and long-run change, shows which versions are actually downloaded (npm last week, crates.io last 90 days) and adds dependent counts from deps.dev. Paste saved API JSON to analyse offline.

  • npm: GET https://api.npmjs.org/downloads/range/last-year/<pkg> (daily downloads) and /versions/<pkg>/last-week (downloads per version over the last 7 days).
  • PyPI: GET https://pypistats.org/api/packages/<pkg>/overall?mirrors=false (daily downloads without mirrors, ~180 days) and /recent. pypistats has no per-version endpoint, so version adoption is not available for PyPI.
  • crates.io: GET https://crates.io/api/v1/crates/<name> (metadata, version ids, all-time downloads) and /crates/<name>/downloads (last 90 days per version plus "extra" downloads of older versions); the platform fetcher sends an identifying User-Agent, which crates.io requires.
  • Daily values are summed into Monday-start weeks; weeks with fewer than 7 days of data are marked partial and excluded from growth. Growth = last 4 complete weeks vs the 4 before; long-run change = last 4 vs first 4 complete weeks.
  • Version shares = downloads of a version ÷ all version downloads in the same window; majors group 1.x, 2.x … (0.y releases are grouped per minor). "Highest stable" is the largest non-prerelease semver.
  • Dependents: deps.dev v3 package lookup → default version → v3alpha …:dependents, i.e. packages in the same ecosystem whose resolved dependency graph contains exactly that version (direct + indirect). Older versions' dependents are not included.
  • Downloads include CI systems, mirrors and bots; they are a usage signal, not a user count.

Sources

For scripts and AI agents

  • JSON API: POST https://softwareadoptionexplorer.usefulweb.site/api/v1/calculate (same calculation as this page)
  • Interface description: OpenAPI 3.1 · AI guide: llms.txt
  • MCP server (Streamable HTTP): https://softwareadoptionexplorer.usefulweb.site/mcp · tool name software_adoption_explorer
Example request
curl -s -X POST https://softwareadoptionexplorer.usefulweb.site/api/v1/calculate \
  -H 'content-type: application/json' \
  -d '{…see OpenAPI examples…}'

Related tools

Feedback