Guided tour · three walkthroughs
The project in three short videos
Each video follows one workflow from start to finish, with the step shown on screen and as captions. A Playwright script recorded them from this site and checked every figure it shows on the way (the prices in the heatmap, the optimiser's schedule and revenue, each policy's share of perfect foresight, the sizing results), so a broken feature fails the recording instead of producing a misleading video.
Walkthrough 1 of 3 · /prices → /prices/2025 → /lab
The price signal
The Price Atlas: every half-hourly VIC1 spot price as a heatmap, with what a perfectly informed battery could have earned each day. Find the year's price spike, the brief's test window and the negative midday prices of 2025, read the duck curve, then open a day in the Dispatch Lab.
Steps (transcript)
- 1The Price Atlas: every half-hourly VIC1 spot price of 2021, one pixel per half hour
- 2The year's highest price: 18 May 2021, 18:00 to 18:30, at $7,443/MWh
- 3The amber bars: a perfect battery would have earned $2,381,681 that day
- 4The boxed test window: winter evening peaks, here $2,618/MWh at 17:30 on 6 Jul 2021
- 52025: the midday band has turned pink, 4,218 negative half-hours against 57 in 2018
- 612 Oct 2025 at 14:30: -$38/MWh, so a battery is paid to charge
- 7The duck curve: in 2025 the average price sinks to $8.88/MWh at 13:00 and peaks at $196.95 at 18:00
- 8A perfect battery's year: $33.4M in 2018, $56.8M in 2025
- 9Click a day to open it in the Dispatch Lab: 12 Oct 2025 earns $107,431 with perfect foresight
Walkthrough 2 of 3 · /lab
Optimal schedule
The Dispatch Lab: pick a market day and the brief's linear program, solved exactly in your browser, plans when the battery charges and sells. Read the plan half hour by half hour, compare it with the no-foresight policies, then answer Deliverable 1 with and without its one-cycle limit.
Steps (transcript)
- 1The Dispatch Lab: an exact optimiser plans any day from 2018 to 2025, in your browser
- 2Pick a day: 6 Jul 2021, the best day of the brief's six-week test window
- 3It charges at full power before dawn: 300 MW at 04:00, when power costs $101.24/MWh
- 4And sells into the 17:30 spike: $2,618.09/MWh, $350,261 in a single half hour
- 5The plan earns $535,324: 2,311 MWh bought at $144.30 on average, 1,872 MWh sold at $466.71
- 6Same day, every strategy: time of day earns $404,917, 76% of perfect foresight
- 7Every half hour of the plan, with a CSV download
- 8Deliverable 1, one cycle (at most 580 MWh from storage) on 17 Jul 2020: $43,360
- 9Lift the limit: two full cycles earn $51,350
Walkthrough 3 of 3 · /lab → /sizing
What if
Change the battery and watch the optimum move: double the storage, make it leakier, charge it for wear, then see how the no-foresight policies fare on the battery you built. Finish with the six-week sweeps over size, efficiency and wear.
Steps (transcript)
- 1What if? 12 Oct 2025 has 17 negative half-hours: the brief's battery earns $107,431 with perfect foresight
- 2Double the storage to 1,160 MWh: $169,347, soaking up more of the negative-price midday
- 3A leakier battery, 80% each way (a 64% round trip): $151,646
- 4Add $20/MWh of wear on every MWh sold: $120,516, and 1.52 cycles instead of 2.09
- 5Without foresight, on this battery: rolling persistence earns $100,262, 83% of perfect
- 6Same day, every strategy: time of day now loses $20,444
- 7Back to the brief's battery in one click
- 8Six weeks, every size: double the energy +38%, double the power +35%
- 9The full grid, re-solved for each design: the brief's 300 MW and 580 MWh earn $5.93M
- 10Losses and wear: a $10/MWh wear charge trims revenue by 10% but cuts cycling by 18%
Screenshots
Every key feature at a glance
Captured by the same script in light mode at 1440 × 900 (the landing page also in dark mode) and on a 390 px phone. Select one to enlarge it; the arrow keys step through the set and Escape closes it.
Desktop · 1440 × 900
Phone · 390 × 844
How these were made
pnpm showcase runs web/e2e/showcase.spec.ts on the system Chrome. It plays each journey at a human pace with an on-screen caption and a visible cursor, asserts what it shows, and records it at 1280 × 800; ffmpeg then encodes the H.264 videos on this page and the GIFs in the README. The captions, the step lists here and the README walkthrough are the same text. Every figure is a full count over the public AEMO prices or an exact optimum, so a re-run shows the same numbers.
The walkthroughs use no AI. The one “Explain this schedule” screenshot uses no real API key either: the key is a placeholder, every request to the provider is intercepted in the browser, and the reply is a labelled mock whose text starts with “Mocked response for illustration.” and whose model is reported as a mock. It still passes through this site's real checks: the schema, the grounding check against the numbers sent, the human decision and the audit log.