Starling — an independent web browser, built from scratch
GitHub
Independent · Built in .NET · Open
A browser,<br>managed.
Starling is a web browser engine with no Chromium, no Gecko, no WebKit underneath — a managed-first engine, written from the ground up in .NET. Parser, layout, paint, and a JavaScript runtime, all its own.
View the source<br>See what works ↓
parser · cascade · layout · paint<br>.NET · multi-process
the engine, rendering<br>Real sites. No borrowed engine.
This is Starling drawing a live site — parser, cascade, layout, and paint pipeline, end to end. Every box and glyph on screen is computed by code written for Starling, running on .NET.
starling://render — netclaw.dev
live paint
with:<br>-->
render preview · add assets/render.png
project status<br>Honest numbers, backed by tests.
Starling is experimental. Each figure is measured by a real test suite — Test262, Web Platform Tests, and Starling's own specs. Nothing rounded up.
ECMAScript / Test262language suite
0%
Core language conformance across the Test262 suite.
Web Platform Testsclimbing
0%
Cross-browser behaviour across DOM, CSS, and HTML.
HTML parserspec<br>spec-compliant
Paint backendshipped<br>stable
DOMpartial<br>in progress
CSS & Layoutpartial<br>in progress
Networkingpartial<br>in progress
GUI shellpartial<br>in progress
why build it this way<br>A managed-first browser is a bet — that the engine no longer needs C++.
Ladybird proved an independent engine is viable. Arc and Dia ship in Swift. Starling pushes the idea further: a browser engine written in a managed language, in the open, beholden to no vendor.
01<br>No borrowed engine
HTML parsing, the DOM, the CSS cascade, layout, paint, and a JavaScript runtime — all written for Starling. Nothing forked from Blink or WebKit.
02<br>Managed by design
Built on .NET, multi-process by architecture. The bet is that memory safety and tooling can come from the platform, not from years of hardening.
03<br>WASM as a first-class citizen
The long game: earn parity on real sites, then let WebAssembly reach the DOM directly — not as a guest behind a JavaScript bridge.
see for yourself<br>Read the code. Run the engine. Watch it earn the web.
Experimental software · built in the open · not yet hardened for daily use
starling-browser on GitHub<br>The core engine ↗
© 2026 · Starling Browser