- Last 7 days
- 177
- Last 30 days
- 3,208
- Since 2026-07-01
- 73,433
- Including mirrors
- 10,384
- Packages
- 12
Every package, both registries.
Every published Cendor package on PyPI and npm — the seven libraries, the SDK, and the dev tooling — recorded daily and broken down per package. How these are counted →
- Last 7 days
- 736
- Last 30 days
- 4,449
- Since 2026-07-06
- 60,849
- Packages
- 11
Downloads per day
Two registries, one scale. Hover for a day's numbers. The window above sets the range.
Complete through 2026-09-11 · both registries publish a once-a-day aggregate roughly 24 hours behind. Recording began 2026-07-01.
By product
One brand, two doors — the libraries you plug in under your framework, and the SDK built on them. Dev tooling versions on its own cadence and is optional.
| Product | PyPI · Python | npm · TypeScript | ||||||
|---|---|---|---|---|---|---|---|---|
| 7d | 30d | All | Share | 7d | 30d | All | Share | |
| Librariesseven libraries + the umbrella and alias packages | 104 | 2,637 | 62,693 | 82% | 706 | 4,079 | 49,765 | 92% |
| SDKthe governed agent loop | 60 | 431 | 8,659 | 13% | 20 | 249 | 8,385 | 6% |
| Dev toolingthe MCP docs server + the init scaffolder | 13 | 140 | 2,081 | 4% | 10 | 121 | 2,699 | 3% |
Each share is a product's proportion of that registry's own traffic in the selected window — PyPI within PyPI, npm within npm (whole percents, so rounding can leave a column a point off 100). The two are never combined into one figure: PyPI's count excludes index mirrors and npm publishes no equivalent split, so a ratio spanning both would divide a filtered number by an unfiltered one. How these are counted →
Python — cendor-* on PyPI
Mirror-excluded unless a column says otherwise — "Raw" is the unfiltered count and "Mirrors" the share of it that came from index mirrors. Every row links to the package and to its own chart on pypistats.org (opens in a new tab).
TypeScript — @cendor/* on npm
npm publishes one number per package — the same basis npmjs.com (opens in a new tab) shows on every package page.
How these are counted
Sources
PyPI figures come from pypistats.org (opens in a new tab), which reports PyPI's own CDN logs split into with_mirrors and without_mirrors; we show the mirrors-excluded number. npm figures come from api.npmjs.org/downloads (opens in a new tab), the same source behind the weekly count on every npmjs.com (opens in a new tab) package page. npm offers no equivalent split, so the two registries are reported side by side rather than combined. Both APIs are public and unauthenticated — anyone can reproduce every number on this page.
Recorded, not fetched live
A job appends each new day to a committed ledger in this site's repository, so the history is auditable in git. This is not an optimisation: pypistats keeps a rolling 181 days and then drops the oldest day permanently, and PyPI publishes no lifetime total — a day not recorded is gone. Nothing is fetched when you load this page, and no request leaves your browser.
Windows
Every window ends on 2026-09-11, the last day complete in both registries, so the Python and TypeScript columns always cover identical calendar days. "30d" is the 30 days ending there; "7d" the 7 days ending there.
Cendor Monitor
The optional self-hosted container is ghcr.io/cendorhq/cendor-monitor. GitHub publishes no pull count for container packages, so there is no figure to report and we do not estimate one. What the monitor is →
Ledger last refreshed 2026-09-12. Versions shown are the published releases from /releases; the machine-readable feed is /releases.json (opens in a new tab).