Starling – Managed-first .NET web browser engine, built from primitives

bj-rn1 pts0 comments

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

starling engine browser managed from paint

Related Articles