Monday 30 March 2026Afternoon Edition

ZOTPAPER

News without the noise


Programming & Dev Tools

Ladybird Browser Adopts Rust, Ports 25,000 Lines of C++ in Two Weeks With AI Help

Independent browser project chooses Rust over Swift, uses Claude Code and Codex to translate its JavaScript engine

Zotpaper2 min read📰 2 sources
The Ladybird browser project has announced it is adopting Rust as its memory-safe replacement for C++, after previously exploring and rejecting Swift due to limited platform support and C++ interop issues.

The project's first major porting target was LibJS, Ladybird's JavaScript engine. The lexer, parser, AST, and bytecode generator were translated from C++ to Rust, producing about 25,000 lines of Rust code in approximately two weeks — work the team estimates would have taken months by hand.

The translation was done using Claude Code and OpenAI's Codex, though the process was described as human-directed rather than autonomous. Developers decided what to port, in what order, and what the Rust code should look like, using hundreds of small prompts to steer the AI agents. Multiple adversarial review passes followed.

The result achieved byte-for-byte identical output from both the C++ and Rust pipelines, with zero regressions across the test262 JavaScript test suite. The project had initially rejected Rust in 2024 because its ownership model was a poor fit for the web platform's 1990s-era OOP patterns, but pragmatism won out.

Both Firefox and Chromium have already introduced Rust into their codebases, making Ladybird's decision part of a broader industry shift toward memory safety in browser engines.

Analysis

Why This Matters

This is a landmark case study in AI-assisted code migration. Porting 25,000 lines of C++ to Rust in two weeks with zero regressions demonstrates that AI coding tools can dramatically accelerate large-scale refactoring when guided by experienced developers.

Background

Ladybird is one of the few independent browser engine projects, aiming to build a browser from scratch outside the Chromium and Firefox ecosystems. Memory safety has been a major concern in browser development, with Google attributing roughly 70% of Chrome security bugs to memory errors.

Key Perspectives

The team's honest assessment — that Rust is not a natural fit for web platform OOP patterns but is the pragmatic choice — reflects a maturing industry view. Perfect language fit matters less than ecosystem maturity and safety guarantees.

What to Watch

Watch for other large C++ codebases to attempt similar AI-assisted migrations. If the Ladybird results hold up, this could become a standard playbook for modernizing legacy systems.

Sources