Describe your talk to Claude. Get back one self-contained index.html: designed, offline-ready, yours forever. No app, no export, no lock-in.
PowerPoint files don't travel well.
Fonts and layout drift from one machine to the next.
It needs the app, often a paid one, just to open.
A binary blob you can't read, diff, or version.
Awkward to share as a plain link.
Portable where PowerPoint is fragile.
PowerPoint
Forge
Presenter mode, notes, timer
Slide transitions and animation
Opens with no software installed
Renders identically on every machine
Fonts travel inside the file
Readable and versionable in git
Hostable as a public link
Agenda
Three minutes, three ideas.
The idea: three layers compile to one file.
On stage: every control, demonstrated live.
Make it yours: themes, motion, a brand of your own.
Part 01
The idea
Three layers that stay separate, so a deck never breaks when you reskin it.
Engine, theme, content. Never tangled.
Engine
Scaling, navigation, presenter mode. Never touched.
Theme
Colours, type, spacing, fonts. The whole look.
Content
Your slides. One HTML file each.
Change one layer and the others don't move. Restyle a whole deck without touching a slide.
A slide is just markup.
<sectionclass="slide"><h2class="title">Caching cut p99 by 40%.</h2><ulclass="bullets"><li>One idea per line.</li></ul><asideclass="notes">What you say, not what they read.</aside></section>
One command inlines everything.
Sources
Slides, theme, fonts and images, in plain files.
build.py
Python standard library only.
index.html
One file. Opens anywhere, forever.
No build server, no dependencies, no network. Double-click to open, email it, host it.
Part 02
On stage
Every control a presenter needs, built into the same single file.
Present like you rehearsed.
Press p to see your speaker notes. Only you see them.
A timer and a wall clock, so you stay on time.
A live preview of the next slide. Nothing surprises you.