Build provenance
OpenRx is a build-time snapshot, not a live feed. This is the exact version of every source archive the pages were generated from.
Built 2026-09-25 13:45 UTC · 47,843 medication entities · 4,790 detail pages
| Dataset | Key | Agency | Version | Files | Size | Downloaded |
|---|---|---|---|---|---|---|
| FDA Drugs@FDA — 12-table relational dump (tab-delimited) | fda_drugsfda_zip | FDA | — | 1 | 5.7 MB | 2026-09-25 |
| FDA Orange Book — flat data files (tilde-delimited) | fda_orangebook_zip | FDA | — | 1 | 1.0 MB | 2026-09-25 |
| FDA Purple Book — Database of Licensed Biological Products | fda_purplebook_csv | FDA | August 2026 | 1 | 0.4 MB | 2026-09-25 |
| openFDA — Drug Enforcement (Recalls) | openfda_enforcement | FDA | September 23, 2026 | 1 | 3.8 MB | 2026-09-25 |
| openFDA — Drug Shortages | openfda_shortages | FDA | September 24, 2026 | 1 | 0.4 MB | 2026-09-25 |
| openFDA — Drugs@FDA | openfda_drugsfda | FDA | September 24, 2026 | 1 | 8.9 MB | 2026-09-25 |
| openFDA — National Drug Code (NDC) Directory | openfda_ndc | FDA | September 24, 2026 | 1 | 26.9 MB | 2026-09-25 |
| openFDA — Orange Book (JSON) | openfda_orangebook | FDA | September 24, 2026 | 1 | 2.3 MB | 2026-09-25 |
| openFDA — Drug Labeling (Structured Product Labeling) | openfda_label | FDA / NLM | September 24, 2026 | 14 | 1773.7 MB | 2026-09-25 |
| FDA Animal Drugs @ FDA (Green Book / CVM) | fda_animal_drugs | FDA CVM | — | 1 | 0.8 MB | 2026-09-25 |
| openFDA — Animal & Veterinary Adverse Events (VeDDRA) | openfda_vet_event | FDA CVM | September 23, 2026 | 158 | 220.0 MB | 2026-09-25 |
| DailyMed — Pharmacologic class mappings | dailymed_pharm_class_mappings | NLM | — | 1 | 2.4 MB | 2026-09-25 |
| DailyMed — RxNorm mappings | dailymed_rxnorm_mappings | NLM | — | 1 | 6.8 MB | 2026-09-25 |
| DailyMed — SPL release file metadata | dailymed_spl_metadata | NLM | — | 1 | 7.3 MB | 2026-09-25 |
| FAERS report counts | openfda_event | FDA | queried live at build | — | — | 2026-09-25 |
Reproducing this build
The pipeline is deterministic and needs no network access beyond the initial download. Running it again against the same archives produces an identical database.
# from the project root
uv run etl/fetch.py --tier all # download + checksum every archive
uv run etl/build_all.py # schema -> ETL -> prune -> aggregates
uv run etl/enrich_faers.py # optional: openFDA report counts
cd site && npm run build # Astro static build + Pagefind index
npx wrangler deploy # publish to Cloudflare Workers db/schema.sql is the single definition of the schema — the same file creates the
local SQLite database and the Cloudflare D1 databases, so the two cannot drift.