All work

Case study 01 · Demand forecasting · Scenario planning

Clinical Supply Planner

A planning application that turns protocol inputs into demand forecasts and supply plans, and shows how demand and supply shift when an assumption changes, before anything is committed.

Role
Designed and built end to end
Built with
Python, FastAPI, PostgreSQL and React, written with Claude Code
Setting
Crossbow Therapeutics, Phase 1 dose escalation
Status
Used to plan supply for both Phase 1 oncology trials

The tool · click through the tabs

Illustrative data, not from a live study

Supply Planner
Study ABC-101 · Base case v1

Step 1 · protocol inputs

Study setup

Dose escalation into an expansion cohort. Change the protocol inputs and every downstream tab updates.

Expansion cohort · subjects

Treatment · cycles per subject

Vial strength

Arms & dosing · weight-based, 75 kg average weight

CohortDoseSubjectsEnrollsDose / subjectVials / dose
Cohort 11 mg/kg3Months 1–275 mg1
Cohort 23 mg/kg3Months 3–4225 mg3
Cohort 310 mg/kg6Months 5–7750 mg8
Expansion10 mg/kg24Months 8–15750 mg8
Visit schedule · Day 1 dosing every 21 daysTreatment · 6 cycles per subjectVial · 100 mg

Enrollment curve · new subjects per month

2
1
2
1
2
2
2
3
3
3
3
3
3
3
3
Dose escalationExpansion

The problem

Forecasts go stale the day the protocol changes

In dose escalation, a supply forecast is only as good as its last set of assumptions. Every new cohort, dose level or enrollment surprise means reopening a workbook, re-checking formulas and re-explaining the numbers to clinical, CMC and finance.

With two first-in-human trials running and a third starting up, I needed one place to model every study, test what-if scenarios and keep each version of the forecast traceable.

What I built

Change an assumption, see the impact

  1. 01

    Study setup

    Arms, cohorts, dosing (fixed, weight-based or dose escalation), cycle-based visit schedules and enrollment curves, captured once as structured data.

  2. 02

    Forecast engine

    Demand by product and period, with screen failures, discontinuation and overage applied the same way every time.

  3. 03

    Scenario modeling

    Fork a scenario, change enrollment, dosing or overage, and compare versions side by side.

  4. 04

    Supply plan

    Projected inventory against the forecast, with reorder points and stockout and expiry alerts.

Results

What changed

  • Rerunning a forecast after a protocol change takes minutes instead of hours
  • Eliminated errors caused by manual spreadsheet updates
  • Used to plan supply for both Phase 1 oncology trials
  • Scenario results informed how many drug substance and drug product batches to plan

Next case study

Compassionate Use Workflow