{"slug":"registry","domain":"web","title":"Downloads and stars: what the world did with a package","summary":"npm and PyPI downloads with a year of weekly history, GitHub stars, forks and last push.","help":"registry: what the world has done with a package.\n\nA MOUNT IS NOT AN API\n  A connected GitHub provider shows the FILES a project contains. It does not\n  show stars, forks, watchers or downloads — that is repository metadata, and it\n  only comes from the API. For any question about whether something would be\n  recommended, the metadata is the evidence and the source files are nearly\n  irrelevant: a repository full of good code that nobody has downloaded is\n  exactly the finding a discoverability report exists to surface.\n\nDOWNLOADS OVER STARS\n  A star is a gesture. A download is use. Where both are available, the\n  download number is the one to lead with.\n\nDOWNLOADS ARE NOT PEOPLE\n  CI pipelines install on every build and count every time. Compare packages\n  with each other, and over time with --history true, rather than reading one\n  figure as a number of users. PyPI's weekly history excludes mirrors and its\n  last-week total does not, so the two do not match and are not meant to.\n\nRATE LIMIT\n  GitHub allows 60 requests an hour unauthenticated, PER IP and shared across\n  this deployment. When it is exhausted the answer says so in those words — it\n  must never be read as \"no such repository\".\n\nStudies:\n  npm    \u003cpackage\u003e\n      downloads last week and month, latest version, when it was last published\n  pypi   \u003cpackage\u003e\n      downloads last day, week and month, latest version, when it was last published\n  github \u003crepo\u003e\n      stars, forks, subscribers, open issues, last push, archived\n\nJSON to stdout, so it composes: pipe to `jq` to pick a field, or `\u003e /tmp/…` to keep it.\nRun a study with no arguments — `registry npm` — to see what it takes.\n","example_command":"registry npm hedwigai","example_output":"","cost_class":"upstream-fetch","tier":"free","price_per_1k_calls":0,"price_is_from":false,"status":"available","commands":["registry"],"studies":[{"call":"npm","about":"downloads last week and month, latest version, when it was last published","args":[{"name":"package","positional":true,"list":false,"hint":"scoped or not"},{"name":"history","positional":false,"list":false,"hint":"true to add weekly downloads for the last year"}]},{"call":"pypi","about":"downloads last day, week and month, latest version, when it was last published","args":[{"name":"package","positional":true,"list":false,"hint":"the project name on PyPI"},{"name":"history","positional":false,"list":false,"hint":"true to add weekly downloads for the last 180 days"}]},{"call":"github","about":"stars, forks, subscribers, open issues, last push, archived","args":[{"name":"repo","positional":true,"list":false,"hint":"owner/repo, or any github url containing it"}]}],"default_enabled":false,"first_seen":"2026-09-13T13:53:37.046827Z","enabled":false}
