frontpage.
newsnewestaskshowjobs

Open Source @Github

fp.

Open in hackernews

Show HN: Bento - An entire PowerPoint in one HTML file (edit+view+data+collab)

https://bento.page/slides/
148•starfallg•1h ago
Over the past few months, our team has been building more and more slidedecks using web frontend technologies with coding harnesses like Claude Code, but a common complaint is to make even small edits we need to edit the code either manually or via the harness.

To avoid this loop, I ended up creating Bento, a single HTML file with everything you need in a slide tool including animations and shared editing. There's no install or cloud login, everything works offline. The default deck is around 560 KB and it doesn't need to fetch anything once you got it.

Open it in a browser and then you can edit, present, print and save. Share it via email or via Airdrop and all they need is a browser to edit, present and also do live collab on the slides. Drop it in to Claude or ChatGPT to transform existing pptx files into Bento slides. There is no cloud involved, only an encrypted blind relay to allow for shared editing. The relay doesn't see any of the data.

Check it out at https://bento.page/slides/ which takes you straight to the editor.

Go to https://bento.page/guestbook/ to try out the live guestbook to experience share editing / collab.

There is also a gallery with some sample decks on the website - https://bento.page/

All the code is MIT licensed and you can find it here - https://github.com/nyblnet/bento . I used reveal.js with several other libraries (including some homegrown ones), and Claude Code.

Comments

starfallg•1h ago
Hi, I'm the creator of Bento. Just wanted to share a bit more about how I created it beyond what's in Github.

The file contains more or less two sections. There is a plain block of JSON near the top of the file which is the slide data. You can read, grep, or point a harness at it. The app itself is in a base64 blob that loads through a small shim which deflates in the browser with DecompressionStream, which keeps the package small and so that we don't need to fetch any external files at runtime. File System Access API is used for JSON writeback into the same file, which falls back to a plian download and all updates are ECDSA signed.

I started with reveal.js which served as a base, and incorporated GSAP/Flip to handle the animation. Then I added charting with echarts, but due to a number of issues with size and how the worked, I ended up re-implementing both.

What I'm most pleased about is how seamless the CRDT works. The blind relay is a small file that runs on Cloudflare Durable Objects, and all it sees are the encrypted data from the clients. Collab is off until we turn it on in the app (by starting a session by sharing by invite file), and then some sets of keys are generated. Access is handled by user key, and you can have read-only users, and also revoke live collab access by user as well.

mbreese•41m ago
This was my biggest question. Thanks for preemptively answering (and being proud!).

When I was playing with this, I immediately thought of TiddlyWikis, which I've always been fond of, but they never took for me. However, an easily editable presentation -- that's a use case I can understand.

I couldn't see how there was a CDRT when I'm just working with a single file. I was trying to figure out where the server was. So -- this is just on for everyone? Are you concerned that your Cloudflare account will be hammered with this?

starfallg•36m ago
You can play around in the guestbook. I'm in it right now and you can see me editing things.

Cloudflare Durable Objects are pretty cheap and I'm using it like a very basic pub/sub with each deck having it's own DO. I did some calculations and it should be well within my spend limits.

latexr•1h ago
Why does the homepage mention AI over 20 times? Why does it mention AI at all? Why is most of it absurdly long and obfuscated base 64, which looks be binary data?
starfallg•1h ago
It's really to solve a use case where there are a lot of these cool web-based presentations being created by AI, but they are all disposable things that non-technies can't work with easily.

Base64 is paired with compression to keep the size small so you can share it easily. The original version was around 1.3MB and maybe we can have a switch to output without compression. The source that generates it is all in Github.

luanmuniz•1h ago
Because whatever you like or not, AI support these days is a must. Nobody who makes PPT does everything by hand nowadays. And the project is on GitHub, you can get the full code there if you must...
luanmuniz•1h ago
This is awesome! I do love this software is one file thing. A breath of fresh air on these you-rent-everything-owns-nothing days
starfallg•54m ago
Thanks! I guess there are some drawback to this approach, large companies especially would be completely adverse to it. But it's cool and I'm hoping people would find it useful!
meetingthrower•53m ago
OMG coming from bigtime consulting this is...AMAZING. Thank you!
starfallg•45m ago
Yeah, if you do a lot of slides, this is for you! The whole point of this is to make doing slides bearable!
calebm•53m ago
Awesome. I've been trying to promote this kind of Single-File Web Apps as a concept - feel free to add this to the proposed Wikipedia page: https://en.wikipedia.org/wiki/Draft:Single_File_Web_Apps
starfallg•49m ago
Thanks for sharing this! Let me take a look. I was only aware of TiddlyWiki when I first started on Bento.
Jonovono•24m ago
https://hyperclay.com/ could be on there I think
bflesch•36m ago
Looks nice, but I'd love to have a setting where all animations can be switched off.
starfallg•30m ago
Good idea! Let me roll that out. I guess you can also print to PDF.
truetraveller•36m ago
Great job! How long did this project take total? How much percent is AI generated?
starfallg•32m ago
Thanks! I started on this last week in my spare time and I used Claude, all my commit history is on Github. I did most of the coding via Claude Code, no fancy system or exotic harness.

I would love to do more by hand, but I look after a tech team inside a renewables firm, so I don't have much time between job and my preschooler.

truetraveller•28m ago
Are you kidding me? I gave it a spin, and it's solid. That's crazy, I'm impressed!
GrinningFool•32m ago
Also, bento: https://github.com/chef/bento. No relation.
fragmede•30m ago
Um, that's amazing... and it's free?
starfallg•27m ago
Thanks! It's a project I did in my spare time and it's made with a lot of MIT licensed JS libraries, so it's natural to make this MIT licensed as well. I don't know even know how anybody would start to monetise something local-first like this in this day and age.
momojo•18m ago
Did you chew on monetization at all? I'm building something similar but for bio-imaging scientists, where I've packed everything I can into a single HTML (and even some modern segmentation models like Cellpose3 and StarDist that fit under Cloudflare's 25MB free tier limit haha.

Maybe I'm thinking too far ahead but I'm hoping maybe I can cover the (future?) compute costs by charging for the heavy duty ML that would have to be run non-locally but IDK. This isn't critical yet but would love to hear your musings.

starfallg•12m ago
If you have a backend that does processing, I'm sure you can monetise it. But for Bento, the whole idea is to forgo the backend, so I didn't really think about it that much. If an enterprise version comes, I'm sure there is a way to integrate stuff like SSO that you can charge for.
stackghost•27m ago
>There's no install or cloud login, everything works offline. The default deck is around 560 KB and it doesn't need to fetch anything once you got it.

This is the best feature.

BIGFOOT_EXISTS•25m ago
Absolutely love seeing products like this. Starred, saved link, will definitely use soon.
trentor•23m ago
I like it. I us
schainks•23m ago
This is awesome!
momojo•22m ago
This blew my socks off. Theres something so satisfying about knowing everything I need is in a single file. I know the caveat is *1. Have a modern browser*, but this is my go to format when trying out random ideas. I even have a macro called `try` that sends me directly to a new folder called `scratch/YYYYMMDD_<try_bento>`.

Great work! I hope to see more and more apps like this in the spirit of "Toss it all into context"

starfallg•6m ago
Thanks, you're right, that is the achilles heel. Most of the functionality actually is in the browser. We're just running fancy scripting on it.
trentor•19m ago
I like it. I used Claude and Qwen to build single file HTML decks in the last few months. The nicest thing with HTML decks is that you can not only ship the decks but integrate your prototype/demos in the same file integrated into the flow of your deck. Would love to see a feature like that.
starfallg•16m ago
Thanks. That would be a cool feature, and definitely possible. Currently it's already got a feature where you can export and import it's data JSON. We just need to find a way to squeeze a whole frontend in.
skybrian•14m ago
This is very neat!

For people clicking on a link to some slides that someone shared, it seems like starting out in viewing mode with a prominent edit button might be better than starting out in edit mode?

starfallg•12m ago
Thanks for the feedback, that's a really good idea! I'll try to roll it out shortly!
skybrian•3m ago
Also, viewing slides on a tablet, I don’t see a way to open speaker notes since I can’t “press the S key.” These instructions should probably be different if you’re not on desktop.

Maybe display speaker notes by default if the screen is in portrait mode?

Show HN: Bento - An entire PowerPoint in one HTML file (edit+view+data+collab)

https://bento.page/slides/
149•starfallg•1h ago•34 comments

Show HN: HN Hall of Fame – browse 3,100 legendary Hacker News links

https://www.orangecrumbs.com/hall/
57•oyster143•1h ago•15 comments

Making

https://beej.us/blog/data/ai-making/
54•erikschoster•1h ago•6 comments

The startup's Postgres survival guide

https://hatchet.run/blog/postgres-survival-guide
121•abelanger•4h ago•52 comments

Airbus Full Scale Foldable Wing Extensions

https://www.airbus.com/en/newsroom/press-releases/2026-07-airbus-launches-new-flight-test-program...
35•r2sk5t•1h ago•12 comments

Mechanical light bulb from 1675 [video]

https://www.youtube.com/watch?v=0Y-9GbsS9Fg
13•kadohg•1w ago•4 comments

10 REM"_(C2SLFF4

https://beej.us/blog/data/mystery-comment/
109•ingve•4h ago•27 comments

Neo Radar: A browser-based orbital mechanics engine with 41k real asteroids

https://neoradar.space
22•daviazpen•1h ago•4 comments

Launch HN: Unlayer (YC W22) – Add email and document builders to your app

https://unlayer.com
8•adeelraza•50m ago•7 comments

Ghost Cut – or why Cut and Paste is broken everywhere

https://ishmael.textualize.io/blog/ghost-cut/
17•willm•2h ago•10 comments

Introduction to Formal Verification with Lean Part 1

https://hashcloak.com/blog/tutorial-introduction-to-formal-verification-with-lean-(part-1)
186•badcryptobitch•3d ago•31 comments

Perlin's Noise Algorithm

https://blog.jaysmito.dev/blog/02-perlins-noise-algorithm/
14•ibobev•1h ago•2 comments

Critical Minerals: Reducing U.S. Import Reliance with Substitution and Recycling

https://www.gao.gov/products/gao-26-108687
12•Jimmc414•1h ago•3 comments

OpenNode – Bitcoin Payment Processor

https://opennode.com/
64•gurjeet•2h ago•55 comments

Passkeys were invented by engineers with zero understanding of consumer brain

https://twitter.com/nikitabier/status/2079787406300266743
146•ksec•2h ago•168 comments

"We have information that Moonshot distilled Fable for the development of K3"

https://twitter.com/mkratsios47/status/2079933645888880708
22•softwaredoug•2h ago•34 comments

Hologram works. Elixir runs in the browser

https://hologram.page/blog/backing-hologram
28•lawik•2h ago•4 comments

Show HN: DeepSQL – A self-hostable AI DBA agent for Postgres and MySQL

https://deepsql.ai/
4•venkat971•2d ago•3 comments

Cornell's Interactive Wall of Birds

https://academy.allaboutbirds.org/features/wallofbirds/?_hsmi=428996456
66•yareally•3d ago•26 comments

Show HN: Web swing through midtown NYC

https://www.swingnyc.com/
3•shahahmed•27m ago•0 comments

Intel Starts Shipping High-NA EUV Silicon

https://morethanmoore.substack.com/p/intel-starts-shipping-high-na-euv
200•zdw•3d ago•81 comments

Ethics Is the Skill That Matters Most Now

https://agonora.com/blog/ethics-most-important-skill
18•mw67•2h ago•15 comments

The Music of Destruction

https://thebaffler.com/latest/the-music-of-destruction-fuelling
5•lermontov•1w ago•0 comments

I Built a Private Genomics Study with Stoffel MPC

https://vishakh.blog/2026/07/21/i-built-a-private-genomics-study-with-stoffel-mpc/
16•vishakh82•2h ago•17 comments

Which streaming service was that on again

https://www.timwehrle.de/blog/which-streaming-service-was-that-on-again/
11•weetii•2h ago•12 comments

Most Americans say "not in my backyard" to AI data centers

https://www.redfin.com/news/ai-data-centers-opposition-education-benefit/
50•toomuchtodo•2h ago•78 comments

Original Apollo 11 Guidance Computer source code for command and lunar modules

https://github.com/chrislgarry/Apollo-11
143•noteness•11h ago•46 comments

A Zipper Patent Sat in a Garage for 40 Years. Now It's Real

https://www.yankodesign.com/2026/05/31/a-zipper-patent-sat-in-a-garage-for-40-years-now-its-real/
30•crescit_eundo•1h ago•11 comments

The Pillars of an API Platform

https://launchany.com/the-pillars-of-an-api-platform/
5•mooreds•1h ago•0 comments

Beaver who escaped to find mate welcomes first kit

https://www.bbc.com/news/articles/c70gz4zpv97o
18•1659447091•4d ago•7 comments