TL;DR: PowerHTML is a presentation editor that is a single .html file. It runs fully offline, and — the part I think devs will actually care about — every element on a slide can be arbitrary HTML/CSS/JS you paste in. If you can build it on a web page, it goes on a slide. Free and open-source. 👉 https://nikolasdziretti-del.github.io/PowerHTML/
The short version of why
I'm a physics teacher, not a programmer. I got tired of the usual ritual: no internet in the classroom, slides breaking on someone else's laptop, and every "interactive lesson" tool wanting an account, a subscription, and a stable connection.
So I wanted something dumb-simple: a presentation that is one file and just works — no install, no account, no internet. Copy it to a USB stick, open it anywhere.
The result is PowerHTML. You open a single .html in a browser and that is the editor. You build your slides, hit Save, and you get a second standalone .html that plays your presentation anywhere — offline, no dependencies, no server.
The part I keep forgetting to mention: any slide element can be raw HTML
Most presentation tools hand you a fixed toolbox — text, shapes, images, maybe a chart — and that's the ceiling.
PowerHTML has all of those too. But it also has an "insert HTML" element: you paste in any HTML/CSS/JS and it becomes a live element on the slide.
That one escape hatch changes what a slide is. A slide stops being "text + pictures" and becomes a canvas for arbitrary web content:
a live D3 / Chart.js visualization,
an SVG or canvas animation, a CSS experiment,
an iframe to anything,
a tiny widget you wrote yourself — a calculator, a quiz, a simulation, a mini-game,
a form, a countdown, a live clock — whatever.
And because the whole thing is offline-first, your embedded markup gets baked into the saved file. Your custom widget travels with the presentation and runs with no internet and no build step. You hand someone the .html, they open it, and your hand-written interactive just works.
So the honest pitch to a developer is this: the built-in features cover the common cases, but the real ceiling is "anything you can code on a web page." On a slide. Offline. In one file. Limited only by your imagination (and how much HTML you feel like writing at 11 PM).
What's built in (so you don't have to code everything)
You don't have to drop to HTML for the common stuff — a lot is already there:
Interactive video (like H5P, but fully offline): the video pauses at timecodes and pops questions — single/multiple choice, numeric answers with tolerance, fill-in-the-blanks, branching (each answer seeks to a different point), and a score screen at the end.
A small video editor — trim, cut segments, change speed, bleep-out audio.
Charts from CSV, QR codes, KaTeX formulas, and a few physics simulations.
Presenter view, draw-over-slides, timers, a name wheel, dice, and yes, confetti.
Themes, transitions, object animations, reusable templates.
How it works, briefly
Everything is inlined. Images, audio, video and your HTML embeds get serialized into the file, so the saved show is genuinely self-contained. A few things I had to actually think about:
Video as base64 kills scrubbing. The fix was converting embedded media to a Blob at runtime and handing video a blob: URL — the file still stores base64 (so it stays a single file), but playback uses the fast path.
Interactive-video events are keyed to the source video time, not the edited timeline — so a question at 0:42 still fires correctly even after you trim the clip.
Because it's a 5,000-line single file, it has a small self-test harness (runs the app in jsdom and checks a couple hundred things) so I don't break slide B while fixing slide A.
Honesty, because dev.to will smell it otherwise
I didn't hand-write this. It's vibecoded — I described what I wanted to an AI, tested obsessively, and iterated over several months of evenings. My role was architect, tester, and chief nitpicker, not author-of-5000-lines. It works, but it's a big single file written by a physics teacher after hours, so there will be bugs.
I'm genuinely curious what this crowd thinks — both about the tool and about the approach: is it reasonable for a non-programmer to vibecode real tools for their own needs, or a dead end without understanding what's under the hood?
Try it
It's free and open-source (MIT).
Live / download: https://nikolasdziretti-del.github.io/PowerHTML/
Source: https://github.com/nikolasdziretti-del/PowerHTML/
If you break it (you will), a bug report is the most useful thing you can leave. And if the raw-HTML-embed idea sparks something — I'd love to see the weirdest thing you manage to put on a slide.
United States
NORTH AMERICA
Related News
Secret Claude Tracker Shocks Users After Anthropic's Anti-Surveillance Stance
12h ago
EV Batteries Defy Expectations, Last Hundreds of Thousands of Miles
1d ago
GBase 8a Performance Anomaly Case Study: How a Single Parameter Change Sparked a Chain Reaction
1d ago
Who Else Has Inherited a Codebase With Zero Comments and a Prayer?
1d ago
完美的平庸
3h ago