What it computes
Chorus estimates vancomycin exposure from a whole course of therapy — every dose, level and serum creatinine in it. Renal function changes across the course rather than being held at one value. The target is AUC24, against a default window of 400–600 mg·h/L.
Everything runs in your browser. Nothing you enter reaches the server, and when the tab closes the scenario is gone.
Why 46 models instead of one
Conventional Bayesian TDM software fits the levels to a single population pharmacokinetic (PK) model, chosen in advance. Choosing well is not straightforward: how a published model performs outside the cohort it was derived in is rarely established, and a patient who does match a cohort description may still have atypical kinetics.
Chorus does not choose in advance. It averages across the whole library, following Uster et al. (2021).
In that evaluation of 180 patients on therapeutic drug monitoring, the individual models varied widely in bias and imprecision. Combining them removed the pooled bias and performed about as well as the most appropriate single model — without having to identify which one that was.
Chorus applies this to 46 published models:
- 1 Independent MAP estimation. Each model is fitted on its own by maximum a posteriori (MAP) estimation, balancing the levels against its own population priors.
- 2 Goodness-of-fit scoring. Each is scored on how closely its predictions match the levels drawn.
- 3 Penalized weighting. The models are averaged by those scores, penalizing any that fits only by assuming atypical individual parameters.
The library can also be measured against your own data: the dataset page reports how each model performed across a set of scenarios, and a selector trained on that result narrows the ensemble before the first level.
What it does not do
- — Not a validated clinical tool, and not a source of dosing advice. See the Terms.
- — The model library covers adults 18 and over.
- — It does not support intermittent haemodialysis, peritoneal dialysis or CRRT.
- — Vancomycin only.
How it runs
The numerical core is written in Rust and compiled to WebAssembly, so all 46 models are fitted inside the browser tab in a fraction of a second — no compute server, no API call. It needs any current desktop browser — Chrome, Edge, Firefox or Safari — and nothing else.
The concentration curves and the Bayesian fitting are checked against rxode2 and mapbayr, two established pharmacometrics libraries. Each model is checked separately against the worked examples in its own paper — whether a model was transcribed correctly is a different question from whether the solver is right.
The library
46 activeWho built it
Chorus is built and maintained by Nate Van Veldhuizen, PharmD.
Corrections to a model, or to anything on this site, are genuinely welcome — hello@vanc.app.