TLDRocket
Sign in

Firefox in WebAssembly

Simon Willison's Weblog Simon Willison

Someone compiled all of Firefox to WebAssembly so it runs inside another browser tab. It cost roughly $25,000 in Claude Opus tokens and it actually works, encryption and all.

Based on reporting by Simon Willison's Weblog, Simon Willison — read the original for the full story.

Summary, retelling and take written by AI under human oversight; images are AI-generated illustrations. How we work · Report an error

Puter just did something that sounds like a joke until you click the link: they took the entire Firefox browser, Gecko engine included, and compiled it down to WebAssembly so it runs inside another browser. Simon Willison tried it and got his own blog loading in Firefox, running inside Chrome, via WASM. That's a browser inside a browser, and it actually renders pages.

The team picked Firefox specifically because Gecko has solid single-process support, which apparently made the porting job more tractable than trying this with a multi-process browser. Getting there wasn't cheap or quick. Puter estimates the project burned through about $25,000 worth of Claude Opus and Fable tokens, leaning on a Claude Max subscription to grind through the work. That's a real number for what's essentially an AI-assisted compilation marathon, not a hand-written port.

The trick that makes it usable rather than just a neat proof of concept is the networking layer. Browsers running in a browser can't just open raw sockets, so Puter routes everything through a WebSocket connection using the Wisp protocol, funneled through their own servers. That's the part that got expensive fast — when the project hit the front page of Hacker News, the traffic spike forced them to scale up server capacity just to keep the proxy from falling over.

Willison actually checked whether Puter's claim of end-to-end encryption held up, and it does, mostly. He inspected the WebSocket traffic himself: requests to his HTTPS site stayed encrypted, while plain HTTP traffic to a test site like example.com showed up in cleartext, exactly as you'd expect from a proxy that isn't doing anything sneaky with TLS.

There's already a sibling effort — a project called WebkitWasm attempting the same trick with WebKit instead of Gecko — though it doesn't have a live demo yet. Firefox-in-WASM does, and the code is public on GitHub, so anyone curious enough can go poke at a browser nested inside a browser for themselves.

My take — AI-written commentary, not fact-checked reporting

This is the kind of stunt that has zero practical use case and I love it anyway — it's a flex of what AI-assisted engineering can grind through when you throw enough tokens at a genuinely hard systems problem. The $25k price tag is the real story here: that's not research-lab money, that's a side-project budget, and it tells you compiling an entire browser engine to WASM is now within reach of small teams with a Claude subscription and a lot of patience.

Read more about this at: Simon Willison's Weblog

Related stories

The daily briefing

Every AI story that matters, in your inbox by 8am.

TLDRocket reads all relevant sources, removes duplicate coverage, and summarises the day in two minutes. Follow companies and topics for alerts, or get the briefing in Slack. Free, no spam, unsubscribe anytime.