Analysis updated 2026-07-03
Embed a standards-compliant web page renderer in a Rust desktop app without shipping a full Chromium binary.
Build a custom browser shell on top of Gosub's modular HTML, CSS, and network components, swapping in your own renderer.
Compile Gosub to WebAssembly to run a lightweight web renderer inside an existing web application.
Contribute to or study a from-scratch browser engine implementation to learn how browsers work at the systems level.
| gosub-io/gosub-engine | sozu-proxy/sozu | grvydev/project-lightspeed | |
|---|---|---|---|
| Stars | 3,663 | 3,662 | 3,670 |
| Language | Rust | Rust | Rust |
| Setup difficulty | hard | hard | hard |
| Complexity | 5/5 | 4/5 | 4/5 |
| Audience | developer | ops devops | ops devops |
Figures from each repo's GitHub metadata at analysis time.
Requires Rust's standard toolchain, the graphical GTK4 demo also needs GTK4 development libraries installed on Linux.
Gosub is a browser engine, which is the core software that sits underneath a web browser and handles loading web pages, parsing HTML and CSS, running JavaScript, and drawing the result on screen. Most people interact with finished browsers like Chrome or Firefox, but Gosub is the engine layer that a developer could embed inside their own application or custom browser shell rather than building everything from scratch. The project is written in Rust and is organized into distinct pieces: one part handles HTML parsing, another handles CSS, another manages network requests, another does page layout, and there are separate rendering backends for different graphics systems. This modular design means you can swap out the renderer or connect your own interface on top. The engine also supports running multiple tabs simultaneously, with each tab having its own isolated cookies and local storage. As of now, Gosub can parse HTML and CSS according to web standards, fetch resources over the network, and manage multiple tabs through an event-based interface. Full pixel-perfect rendering and complete JavaScript execution are still in progress. The project also compiles to WebAssembly, which means it can in theory run inside a web browser itself, demonstrated by a screenshot in the README showing a browser running inside another browser. Gosub is an open project welcoming contributors and is under active development. The team coordinates through Zulip and Discord chat. If you are a developer curious about how browsers work internally, or someone building a tool that needs a programmable web-page renderer without shipping a full browser binary, this project is worth watching. Setup requires Rust's standard toolchain, and GTK4 libraries are needed only for the graphical demo examples.
A modular browser engine written in Rust that handles HTML parsing, CSS, networking, and page layout in separate swappable components, designed to be embedded in custom apps rather than used as a finished browser.
Mainly Rust. The stack also includes Rust, WebAssembly, GTK4.
Setup difficulty is rated hard, with roughly 1h+ to a first successful run.
Mainly developer.
This repo across BitVibe Labs
Verify against the repo before relying on details.