opensourceprojects.dev

A broadsheet for software that doesn't ask for your email

A PowerPoint alternative where the file is the whole app
GitHub RepoImpressions3

Project Description

View on GitHub

A PowerPoint Alternative That's Just One HTML File

You've probably sent a .pptx to someone who couldn't open it, or watched a cloud presentation tool change its pricing tiers again. What if the file you sent was the software—viewer, editor, and presenter included? That's the idea behind Bento, a slide deck that lives inside a single HTML file.

What It Does

Bento is a presentation tool where the entire application—viewer, presenter, and editor—ships inside the document itself. You download a single file called Bento_Slides.bento.html (around 560 KB), open it in any modern browser, and it is the editor. Save it, and the file rewrites itself with your deck inside. Send it to someone else, and they need nothing installed to view or edit it.

The architecture is unusually straightforward. Your document data sits in a plain, readable JSON block at the top of the file, in a #bento-doc element. There's no binary format, no proprietary container. The app uses the File System Access API to save itself in place, with a download fallback for browsers that don't support it. Everything—fonts, images, charts, animations, the full editor—travels together in that one file. Flip on Offline mode and updates and collaboration are hard-blocked, so you can verify nothing leaves your machine.

Why It's Cool

The file format is the whole argument. Office documents used to be things you owned. Bento leans hard into that idea: a copy from 2026 should open in 2036, and because your data is plain JSON, you can read it without any special tooling. No lock-in, no archaeology.

Morph presenting is built in. Elements that share an id animate between slides—position, size, color, even gradients. Duplicate a slide, rearrange it, and the motion designs itself. This is the kind of transition feature that usually requires third-party plugins or a lot of manual keyframing.

Collaboration without a trusted server. Bento uses end-to-end encryption (AES-GCM) with keys that live in your file, not on a server. The file itself is the invitation—anyone who opens a copy joins. Offline edits merge back precisely, using the project's own CRDT with character-level text merging. There's an optional sync relay in server/sync-worker/, but it only stores ciphertext and, per the README, learns nothing. It's about one file, and you can read the source.

Charts are dependency-free and live. Bar, line, pie, and scatter charts are drawn by Bento's own engine. During a presentation you get tooltips and zoom, and data morphs when a bar chart becomes a pie. No embedding a heavyweight charting library.

AI agents can edit your deck directly. Because the document is plain JSON in one plaintext block near the top of the file, any assistant that can read and write files can edit it—no plugin, no API. File harnesses like Claude Code, Cursor, and Aider edit the #bento-doc JSON in place. There's even a packaged bento-slides skill installable from the repo's plugin marketplace with /plugin marketplace add nyblnet/bento, which can download the latest Bento app by itself. Chatbots can round-trip the JSON through window.bento.loadDoc.

Updates are signed and non-destructive. Releases are ECDSA-signed and offered in-app. Updating writes a new file, so the old one stays as your rollback. No server ever touches your documents.

The feature list also covers speaker view, comments, layouts, hidden interactive states, hover reveals, motion paths, PDF export, page sizes, and 8 UI languages—all in that 560 KB shell.

How to Try It

The fastest path is to open a browser and go to bento.page/slides. That's the entire app running on a starter deck that doubles as a feature tour.

If you want the actual file:

  1. Grab Bento_Slides.bento.html from the GitHub Releases page, or directly from bento.page.
  2. Open it in any modern browser. No account, no installer.
  3. Edit your deck and save—the file rewrites itself with your content inside.
  4. Want a head start? Pull a designed template from the gallery.

If you're working with AI agents, check out docs/agents.md in the repo for the details on editing .bento.html files in place. The source, including the sync relay, lives at github.com/nyblnet/bento.

Final Thoughts

Bento is best for people who care about owning their files and want a deck that keeps working without a subscription or a login. The single-file approach has real tradeoffs—you're relying on browser APIs and a 560 KB payload—but the payoff is a document that's genuinely portable and inspectable. If you've ever wanted your presentations to be files again, this is a thoughtful take on what that could look like.


Follow @githubprojects for more developer tools and open source projects.

Back to Projects
Project ID: 73a1558c-0406-48e2-96e9-914f7bc4c65dLast updated: September 28, 2026 at 02:52 AM