Revenue forecast: as frontend
The same forecast one more time, over the exact same data.py as page 2,
untouched. What changed is the authoring: this page is plain MDX. Every chart is
a React component that reads db.simulate and db.outcomes by name, so the whole
UI is now frontend you could drop into any React app, pointed at a data.py
hosted anywhere.
Frontend and backend, fully separated
In Streamlit the UI and the server are one process; here they've fully separated.
No page() runs on the server for this page: the components render in the
browser and query the RPCs directly (DuckDB-WASM). The data.py is a plain
backend the frontend talks to by name; move it to its own host and these same
tags keep working.
Assumptions
Median (month 12)……
Downside (P10)…
Upside (P90)…
01