Firefox in WebAssembly - Full Gecko engine running inside a browser tab
Experience the real Firefox browser running entirely within a single web tab, powered by the Gecko engine compiled to WebAssembly. This innovative project delivers a complete Firefox interface with WebGL-based GPU acceleration for rendering web content directly in your browser. Users can enable experimental JavaScript to WebAssembly JIT compilation for enhanced performance, while web content is securely proxied through a Puter-hosted Wisp server. It represents a groundbreaking step in browser technology, allowing you to run a full-featured desktop browser experience without leaving your current window.
The Gecko engine compiled to WebAssembly. The real Firefox interface, rendering entirely inside this browser tab.
- yjftsjthsd-h
>This port cost over 25k in opus/fable tokens for debugging and JIT research
> This was just a fun experiment to push the boundaries of WebAssembly
I'm a huge fan of the project, but I have to ask. If spending $25k is a "fun experiment", where exactly is your threshold for serious work?
- tech234a
Loosely related to porting the Firefox engine in unusual places: here is a project that ports Firefox's Gecko rendering engine to iOS as a sideloadable app (normally Apple only allows its own WebKit rendering engine in iOS apps): https://github.com/minh-ton/reynard-browser
- coolelectronics
Oh and for anyone asking, you can run firefox-wasm inside firefox-wasm inside firefox! I only got this to load once though since it gets pretty unstable at that level.
- ksmithbaylor
I can’t help but think of Gary Bernhardt’s 2014 talk, “The Birth and Death of JavaScript”: https://www.destroyallsoftware.com/talks/the-birth-and-death...
- degamad
I'm so glad this exists, I've been considering doing something like this for a few months.
I recently got a TV based on VIDAA os, a locked-down linux-based OS where everything is rendered from Web pages. It has a built-in browser that doesn't support ad-blocking (I suspect VIDAA is profiting from showing ads on the TV), and you can't install new apps unless they're Web pages.
This would hopefully allow one to run Firefox within the existing browser, then install uBlock Origin within Firefox... I know what this weekend's project is going to be...
- azakai
Prior art: WebKit.js, the WebKit rendering engine ported to JS
- brewmarche
Can’t get it running on Firefox 152.0.6 (aarch64), no extensions.
[chrome-demo] chrome assets ready
[gecko] warning: unsupported syscall: __syscall_madvise
[gecko] embed-xul: main() on the app pthread (PROXY_TO_PTHREAD)
[gecko] embed-xul: GECKO_GL_PASSTHROUGH=1
[gecko] embed-xul: GECKO_COARSE_CLOCK=1
[gecko] embed-xul: GECKO_GPU=1 (GPU/WebRender->canvas rendering)
[gecko] xul_init: GRE dir = /gre
[gecko] Pthread 0x11051000 sent an error! blob:https://developer.puter.com/edc1bd0a-b844-4a18-a69a-63dd49dc304a:8906: SecurityError: Security error when calling GetDirectory
- MajesticHobo2
Browser sandboxing is now fully solved.