Firefox in WebAssembly: Running a Browser Inside a Browser
Anthropic
The Puter team compiled Firefox into WebAssembly, enabling a full browser to run inside another browser. The project spent about $25,000 on Claude Opus and Fable tokens, but due to the Claude Max subscription, costs were much lower. Traffic is proxied through Puter's servers via WebSocket (Wisp), which is necessary due to browser restrictions on network connections.
The Puter development team has compiled the Firefox browser into WebAssembly (WASM), allowing it to run directly inside another modern browser. This was achieved using Firefox's Gecko engine, chosen for its strong support of single-process mode. The project cost approximately 25,000 dollars in Claude Opus and Fable tokens, but thanks to the Claude Max subscription, the actual expenses were much lower. The demo operates through Puter's proxy server, which redirects all traffic via the WebSocket protocol (using the Wisp protocol), since code running in the browser cannot open arbitrary network connections. This results in significant server costs: the team had to scale their servers to handle the load after publishing on Hacker News. According to Puter, the solution supports end-to-end encryption, which was confirmed by the article's author: traffic to HTTPS websites was encrypted, while traffic to HTTP websites was transmitted in plaintext. The project's source code is available in the firefox-wasm repository. There is also a similar project called WebKitWasm, which compiles WebKit into WASM, but it does not yet have an accessible online demo.
Source: Simon Willison —
original
