crates.io data-ecosystem download velocity (monthly)
Monthly download-velocity ranking of Rust crates in the data/ML ecosystem. Nine data-relevant crates.io categories (artificial-intelligence, computer-vision, data-structures, database, database-implementations, mathematics, science, simulation, visualization) — the official curator-assigned category listings — are crawled in recent-downloads order into a candidate universe; the keyless crates.io API supplies per-version daily download series, aggregated to trailing-30-day and prior-30-day totals, and the latest non-yanked version's license and publication date. Crates clearing the 10,000-download floor are classified into a curated 9-category taxonomy by a deterministic ordered rule set over their category membership and keywords. The velocity score is the min-max-normalized trailing-30d download count (0-100) and the growth score the min-max-normalized month-over-month growth rate (clipped to -100%/+1000%; new entrants pinned to the +1000% cap and flagged); trend_score is their 50/50 composite (0-100) and trend_rank orders by trend_score descending (ties: trailing-30d downloads desc, then crate name). Columns: month, fetch timestamp, crate name / URL / latest version / description / license id / publication date, categories / taxonomy category, exact source API URL for each row value (daily downloads series, latest-version record — any number is one GET away from its source), trailing-30d and prior-30d downloads, 60d total and per-day average, growth rate, new-entrant flag, velocity/growth/trend scores (0-100), trend rank. fetched_at is the trailing window end (UTC day granularity), so re-ingesting the same window is a no-op. Primary key: (month, crate_name). Cadence: monthly. Nullability: license_id and published_date may be empty when upstream supplies none; scores and ranks are never null. Caveats: crates.io counts CDN downloads (automated and CI traffic included, not just human adoption), so raw velocity favors widely-depended-on infrastructure; the taxonomy is a first-match heuristic over category membership and keywords, not an authoritative classification; per-crate license ids are author-supplied and informational only. Sample use: order by trend_rank for the month's fastest-rising data crates, or filter category = 'machine-learning'.
Les titres et les descriptions proviennent des sources de données, en anglais.
- Lignes
- 1 478
- Colonnes
- 23
- Cadence de la source
- Mensuelle
- Dernière actualisation
- 25 sept. 2026
- Thème
- technology
| Colonne | Type | Description |
|---|---|---|
| month | string | Month of the trailing 30-day window (YYYY-MM, from the window end date). (unit: YYYY-MM) |
| fetched_at | string | Timestamp when this row was collected (UTC, day granularity; the trailing-window end). Re-ingesting the same window is a no-op. (unit: timestamp) |
| crate_name | string | Crate name as published on crates.io; primary-key component together with month. (unit: string) |
| crate_url | string | Canonical public crates.io crate page URL (https://crates.io/crates/<name>); never null. (unit: url) |
| version | string | Latest non-yanked version number at fetch time. (unit: string) |
| description | string | Crate description as authored on crates.io. (unit: string) |
| license_id | string | License id of the latest non-yanked version; author-supplied and informational only. (unit: string) |
| published_date | string | Publication date of the latest non-yanked version (YYYY-MM-DD). (unit: date) |
| categories | string | Comma-joined crates.io categories whose listings included this crate (e.g. science,data-structures). Kept as collection provenance. (unit: list) |
| category | string | Curated category from a deterministic ordered rule set over category membership and keywords: machine-learning, computer-vision, dataframe-analytics, database, visualization, mathematics, scientific-computing, simulation, data-structures, or other. First matching rule wins; a heuristic, not an authoritative classification. (unit: category) |
| metadata_source_url | string | Exact crates.io API URL behind this row's version/license metadata: GET /api/v1/crates/<name>/versions. (unit: url) |
| trailing_30d_source_url | string | Exact crates.io API URL behind this row's trailing_30d_downloads: GET /api/v1/crates/<name>/downloads (daily per-version series; window sums are derived in the connector). (unit: url) |
| prior_30d_source_url | string | Exact crates.io API URL behind this row's prior_30d_downloads: GET /api/v1/crates/<name>/downloads over the 30 days before the trailing window. (unit: url) |
| trailing_30d_downloads | integer | Download count over the trailing 30 complete days, summing the per-version daily series. Includes automated and CI traffic, not just human adoption. (unit: downloads) |
| prior_30d_downloads | integer | Download count over the 30 days preceding the trailing window, from the same daily series. 0 for new entrants. (unit: downloads) |
| downloads_60d_total | integer | trailing_30d_downloads + prior_30d_downloads. (unit: downloads) |
| downloads_per_day_60d | float | downloads_60d_total / 60. (unit: downloads/day) |
| growth_rate | float | Month-over-month growth: (trailing30 - prior30) / prior30, clipped to [-1.0, +10.0] (-100% to +1000%). New entrants (prior30 = 0) are pinned to +10.0 and flagged. (unit: ratio) |
| new_entrant | integer | 1 when prior_30d_downloads = 0 (no downloads in the prior window — e.g. newly published crates); 0 otherwise. (unit: flag) |
| velocity_score | float | Min-max-normalized trailing_30d_downloads within the snapshot, scaled 0-100. (unit: 0-100) |
| growth_score | float | Min-max-normalized growth_rate within the snapshot, scaled 0-100. (unit: 0-100) |
| trend_score | float | Download-velocity composite: 50% velocity_score + 50% growth_score, 0-100 within the snapshot. (unit: 0-100) |
| trend_rank | integer | Rank by trend_score descending (1 = fastest); ties broken by trailing_30d_downloads, then crate name. (unit: rank) |
10 premières lignes d’exemple — un aperçu, pas le jeu de données complet.
| month | fetched_at | crate_name | crate_url | version | description | license_id | published_date | categories | category | metadata_source_url | trailing_30d_source_url | prior_30d_source_url | trailing_30d_downloads | prior_30d_downloads | downloads_60d_total | downloads_per_day_60d | growth_rate | new_entrant | velocity_score | growth_score | trend_score | trend_rank |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2026-09 | 2026-09-24T00:00:00+00:00 | hashbrown | https://crates.io/crates/hashbrown | 0.17.1 | A Rust port of Google's SwissTable hash map | MIT OR Apache-2.0 | 2026-05-09 | data-structures | data-structures | https://crates.io/api/v1/crates/hashbrown/versions | https://crates.io/api/v1/crates/hashbrown/downloads | https://crates.io/api/v1/crates/hashbrown/downloads | 157 001 388 | 134 885 410 | 291 886 798 | 4 864 780 | 0,164 | 0 | 100 | 9,71 | 54,86 | 1 |
| 2026-09 | 2026-09-24T00:00:00+00:00 | pin-list | https://crates.io/crates/pin-list | 0.1.2 | A safe `Pin`-based intrusive doubly linked list | MIT | 2025-03-27 | data-structures | data-structures | https://crates.io/api/v1/crates/pin-list/versions | https://crates.io/api/v1/crates/pin-list/downloads | https://crates.io/api/v1/crates/pin-list/downloads | 249 731 | 9 927 | 259 658 | 4 327,6 | 10 | 0 | 0,15 | 100 | 50,08 | 2 |
| 2026-09 | 2026-09-24T00:00:00+00:00 | candle-onnx | https://crates.io/crates/candle-onnx | 0.11.0 | ONNX support for Candle | MIT OR Apache-2.0 | 2026-06-26 | science | scientific-computing | https://crates.io/api/v1/crates/candle-onnx/versions | https://crates.io/api/v1/crates/candle-onnx/downloads | https://crates.io/api/v1/crates/candle-onnx/downloads | 199 834 | 13 153 | 212 987 | 3 549,8 | 10 | 0 | 0,12 | 100 | 50,06 | 3 |
| 2026-09 | 2026-09-24T00:00:00+00:00 | maxminddb | https://crates.io/crates/maxminddb | 0.32.0 | Library for reading MaxMind DB format used by GeoIP2 and GeoLite2 | ISC | 2026-09-12 | database | database | https://crates.io/api/v1/crates/maxminddb/versions | https://crates.io/api/v1/crates/maxminddb/downloads | https://crates.io/api/v1/crates/maxminddb/downloads | 137 357 | 3 347 | 140 704 | 2 345,1 | 10 | 0 | 0,08 | 100 | 50,04 | 4 |
| 2026-09 | 2026-09-24T00:00:00+00:00 | cached | https://crates.io/crates/cached | 4.0.0 | Generic cache implementations and simplified function memoization | MIT | 2026-09-05 | data-structures | data-structures | https://crates.io/api/v1/crates/cached/versions | https://crates.io/api/v1/crates/cached/downloads | https://crates.io/api/v1/crates/cached/downloads | 78 899 | 2 650 | 81 549 | 1 359,2 | 10 | 0 | 0,04 | 100 | 50,02 | 5 |
| 2026-09 | 2026-09-24T00:00:00+00:00 | llm-multimodal | https://crates.io/crates/llm-multimodal | 1.12.0 | Multimodal processing for vision and other modalities | Apache-2.0 | 2026-09-24 | science | scientific-computing | https://crates.io/api/v1/crates/llm-multimodal/versions | https://crates.io/api/v1/crates/llm-multimodal/downloads | https://crates.io/api/v1/crates/llm-multimodal/downloads | 68 048 | 2 230 | 70 278 | 1 171,3 | 10 | 0 | 0,04 | 100 | 50,02 | 6 |
| 2026-09 | 2026-09-24T00:00:00+00:00 | ts_bitset | https://crates.io/crates/ts_bitset | 0.6.1 | compact, efficient, non-allocating bitset | BSD-3-Clause | 2026-09-18 | data-structures | data-structures | https://crates.io/api/v1/crates/ts_bitset/versions | https://crates.io/api/v1/crates/ts_bitset/downloads | https://crates.io/api/v1/crates/ts_bitset/downloads | 59 492 | 3 132 | 62 624 | 1 043,7 | 10 | 0 | 0,03 | 100 | 50,02 | 7 |
| 2026-09 | 2026-09-24T00:00:00+00:00 | ts_dynbitset | https://crates.io/crates/ts_dynbitset | 0.6.1 | dynamically-growable bitset based on ts_bitset | BSD-3-Clause | 2026-09-18 | data-structures | data-structures | https://crates.io/api/v1/crates/ts_dynbitset/versions | https://crates.io/api/v1/crates/ts_dynbitset/downloads | https://crates.io/api/v1/crates/ts_dynbitset/downloads | 59 413 | 3 082 | 62 495 | 1 041,6 | 10 | 0 | 0,03 | 100 | 50,02 | 8 |
| 2026-09 | 2026-09-24T00:00:00+00:00 | betteroffice-drawingml | https://crates.io/crates/betteroffice-drawingml | 0.2.0 | Shared DrawingML colors, themes, shape models, and preset geometry. | Apache-2.0 | 2026-09-16 | data-structures | data-structures | https://crates.io/api/v1/crates/betteroffice-drawingml/versions | https://crates.io/api/v1/crates/betteroffice-drawingml/downloads | https://crates.io/api/v1/crates/betteroffice-drawingml/downloads | 57 029 | 193 | 57 222 | 953,7 | 10 | 0 | 0,03 | 100 | 50,02 | 9 |
| 2026-09 | 2026-09-24T00:00:00+00:00 | hannoy | https://crates.io/crates/hannoy | 0.2.0 | HNSW Approximate Nearest Neighbors in Rust, based on LMDB and optimized for memory usage | MIT | 2026-08-14 | data-structures,database,science | database | https://crates.io/api/v1/crates/hannoy/versions | https://crates.io/api/v1/crates/hannoy/downloads | https://crates.io/api/v1/crates/hannoy/downloads | 45 147 | 1 570 | 46 717 | 778,6 | 10 | 0 | 0,02 | 100 | 50,01 | 10 |
Profilé le 25 sept. 2026 à partir de l’instantané 20260925T152148Z-96b11f410a0a
Mesuré- Complétude
- 100 %
- Lignes
- 1 478
- Colonnes
- 23
- Colonnes incomplètes
- 0
| Colonne | Manquant | Distinctes | Plage | Distribution |
|---|---|---|---|---|
| monthvarchar | 0 % | 1 | — |
|
| fetched_atvarchar | 0 % | 1 | — |
|
| crate_namevarchar | 0 % | 1 305 | — |
|
| crate_urlvarchar | 0 % | 1 584 | — |
|
| versionvarchar | 0 % | 387 | — |
|
| descriptionvarchar | 0 % | 1 462 | — |
|
| license_idvarchar | 0 % | 65 | — |
|
| published_datevarchar | 0 % | 797 | — |
|
| categoriesvarchar | 0 % | 27 | — |
|
| categoryvarchar | 0 % | 9 | — |
|
| metadata_source_urlvarchar | 0 % | 1 482 | — |
|
| trailing_30d_source_urlvarchar | 0 % | 1 481 | — |
|
| prior_30d_source_urlvarchar | 0 % | 1 481 | — |
|
| trailing_30d_downloadsbigint | 0 % | 1 605 | 10 011 → 157 001 388médiane 68 720 | 30 hors du 1er–99e centile |
| prior_30d_downloadsbigint | 0 % | 1 278 | 0 → 134 885 410médiane 56 979 | 30 hors du 1er–99e centile |
| downloads_60d_totalbigint | 0 % | 1 291 | 10 416 → 291 886 798médiane 129 386 | 30 hors du 1er–99e centile |
| downloads_per_day_60ddouble | 0 % | 1 483 | 173,6 → 4 864 780médiane 2 156 | 30 hors du 1er–99e centile |
| growth_ratedouble | 0 % | 1 235 | -0,8935 → 10médiane 0,2023 | 14 hors du 1er–99e centile |
| new_entrantbigint | 0 % | 2 | 0 → 1médiane 0 | |
| velocity_scoredouble | 0 % | 234 | 0 → 100médiane 0,04 | 15 hors du 1er–99e centile |
| growth_scoredouble | 0 % | 780 | 0 → 100médiane 10,06 | 14 hors du 1er–99e centile |
| trend_scoredouble | 0 % | 632 | 0 → 54,86médiane 5,38 | 28 hors du 1er–99e centile |
| trend_rankbigint | 0 % | 1 802 | 1 → 1 478médiane 739,5 | 30 hors du 1er–99e centile |
- Actuelle
20260925T152148Z-96b11f410a0a · sha256 96b11f410a0a…
1 478 lignes · premier instantané
Dirigez n’importe quel LLM vers le point d’accès des métadonnées — la documentation ci-dessus est aussi lisible par machine (JSON-LD + Croissant).
curl "https://datazimuts.com/v1/datasets/crates_data_signals/crates_data_velocity_monthly" | jq '{title, rows, columns_count, license}'import requests
ds = requests.get("https://datazimuts.com/v1/datasets/crates_data_signals/crates_data_velocity_monthly").json()
print(ds["title"], ds["rows"], "rows")
# Sample rows for an LLM context window
for row in ds.get("sample_rows", [])[:5]:
print(row)Point d’accès API : https://datazimuts.com/v1/datasets/crates_data_signals/crates_data_velocity_monthly
Astuce : récupérez /llms.txt pour le catalogue complet lisible par machine.
D’où viennent ces données et ce qui en a été fait. Le travail des autres apparaît sous forme de décomptes ; seuls les projets partagés sont nommés.
Citer cet instantané
Épinglé à l’instantané 20260925T152148Z-96b11f410a0a et à son empreinte, pour que vos lecteurs obtiennent exactement les données utilisées.
crates.io data-ecosystem download velocity (agent-curated). (2026). crates.io data-ecosystem download velocity (monthly) [Data set, snapshot 20260925T152148Z-96b11f410a0a, sha256 96b11f410a0a]. Datazimuts. Retrieved 2026-09-25, from https://datazimuts.com/fr/datasets/crates_data_signals/crates_data_velocity_monthly?snapshot=20260925T152148Z-96b11f410a0a
@misc{dz_crates_data_signals_crates_data_velocity_96b11f41,
title = {{crates.io data-ecosystem download velocity (monthly)}},
author = {{crates.io data-ecosystem download velocity (agent-curated)}},
year = {2026},
publisher = {Datazimuts},
howpublished = {\url{https://datazimuts.com/fr/datasets/crates_data_signals/crates_data_velocity_monthly?snapshot=20260925T152148Z-96b11f410a0a}},
note = {Snapshot 20260925T152148Z-96b11f410a0a, sha256 96b11f410a0a8869fe0d2847d396af9e4b36b4e41e27fb53d0c079e909e8c109; accessed 2026-09-25}
}Intégrer un tableau ou un graphique
Collez ce code dans n’importe quelle page. L’intégration est épinglée au même instantané, suit le thème clair ou sombre du lecteur et affiche toujours la source, la licence et un lien de retour.
<iframe src="https://datazimuts.com/embed/chart?dataset=crates_data_signals%2Fcrates_data_velocity_monthly&lang=fr&theme=auto&snapshot=20260925T152148Z-96b11f410a0a&x=published_date&y=trailing_30d_downloads&agg=avg" title="crates.io data-ecosystem download velocity (monthly)" width="100%" height="380" style="border:0" loading="lazy"></iframe>
Posez une question sur ce jeu de données. Les réponses viennent uniquement de sa fiche, de son profil mesuré et de son historique, et citent les faits utilisés.