mrkeyoor.com_
Sat 17 Oct 13:35 UTC
Webevaluationupdated 27 Aug 2026

ladybird review

Ladybird is a new web browser and browser engine built independently of Blink, WebKit, and Gecko. It gives browser engineers another standards-focused codebase to study and test, but the project calls itself pre-alpha and suitable only for developers.

+60stars / 7d
Verdict

Our Ladybird run installed 33 detected Python packages and built that tooling path in 5 seconds, but it found no test target and did not prove the full browser build. Browser engineers should still read and test this independent engine because the repository is active and the build documentation is unusually candid. Everyone else should wait: the maintainers explicitly call Ladybird pre-alpha and suitable only for developers.

We ran it

Lab card: what happened when we ran ladybirdScreenshot of ladybird (ladybird.org)
Install✓ · 13s33 packages · 36 MB
Build✓ · 5s
Testsn/ano test script
Known vulns0(pip-audit)
Repo28242 files~1,553,307 lines of source · 161.5 MB · 16 CI workflows

Answers from our run

Does ladybird build from source?

Dependencies installed in 13 seconds (33 packages), and the build succeeded in 5 seconds. We cloned commit 1933563 into a clean Debian container with 3 CPUs and no project-specific setup.

Does ladybird have tests you can run?

Not through a standard command: the project exposes no test script or target that our harness could run.

Does ladybird have known vulnerabilities in its dependencies?

pip-audit found none in the dependency tree at the time of our run.

Who should not use ladybird?

Anyone choosing a daily browser today: the README labels Ladybird pre-alpha and suitable only for developers.

What are the alternatives to ladybird?

Servo, Chromium, WebKit. Our Ladybird run installed 33 detected Python packages and built that tooling path in 5 seconds, but it found no test target and did not prove the full browser build.

Setup2/5Strict Qt, CMake, Rust, compiler, and system-library requirements
Docs4/5Detailed platform builds and candid pre-alpha limits
Community4/5Daily repository activity and current issue discussion
Maturity2/5Pre-alpha browser with no published GitHub release

Discussed on

  1. hnWelcome to Ladybird, a truly independent web browser994 points
  2. hnThe Ladybird browser project625 points
  3. hnPwning the Ladybird Browser332 points
  4. hnClosing this as we are no longer pursuing Swift adoption328 points
  5. hnUnderstanding Complexity Like an Engineer – The Case of the Ladybird Browser159 points

Who it’s for

Browser-engine developers who want to inspect an independent implementation of HTML, CSS, JavaScript, WebAssembly, graphics, media, and networking.
Web developers willing to test sites and file precise compatibility reports against a young engine.
Systems programmers interested in a multi-process browser with sandboxed renderers and separate network and image-decoding processes.
Early adopters on Linux or macOS who accept missing features, crashes, and source builds.

Who it’s NOT for

Anyone choosing a daily browser today: the README labels Ladybird pre-alpha and suitable only for developers.
Windows users who need a normal native install, or mobile users: WSL2 is the supported Windows build route, native Windows remains experimental, and mobile is not the current focus.
Outside developers looking to land code through pull requests: the contribution policy says only maintainers make code changes, while others can submit reports, reductions, tests, and technical feedback.
Developers on an older distribution who want a quick package-manager build: Ladybird requires Qt 6.9+, CMake 3.30+, Rust, and a C++23 compiler, and its docs say Debian 13 ships a Qt version that is too old.

Setup reality

Our sandbox classified the detected tooling path as Python. It installed 33 packages in 13 seconds, using 36 MB, and its build step succeeded in 5 seconds. No test script or target was detected, so tests were skipped. The audit found no known Python-package vulnerabilities. These results do not show that a complete Qt browser binary was compiled or exercised.

A real desktop build needs no account or API key, but it does need far more host tooling than that detected path: Qt 6.9+, CMake 3.30+, Rust, nasm, Ninja, a C++23 compiler, graphics and audio development libraries, plus dependency downloads handled through the build.

Linux and macOS are the practical targets. Windows is supported through WSL2, while the native route is experimental. The docs warn that older distro packages can be insufficient, default parallel linking can strain limited memory, and misplaced resource files can break icons, fonts, and theming.

A browser engine you can watch being built

Ladybird is attempting the rarest kind of open-source software project: a new general-purpose web browser with its own engine. It does not use Blink, WebKit, Gecko, or another existing engine as its base. Several core libraries came from SerenityOS, including the LibWeb renderer and LibJS JavaScript engine, but Ladybird now develops as a separate browser and uses outside libraries where that makes sense.

The architecture already resembles a modern browser. A main UI process coordinates separate WebContent renderer processes, with image decoding and network work moved into their own processes. Each tab gets a sandboxed renderer. That separation is meaningful when parsing hostile pages, although nobody should mistake an architectural choice for a finished security record. The README's warning is blunt: Ladybird is pre-alpha and only suitable for developers.

That makes its present value easier to judge. Browser engineers can read a fresh implementation of web standards. Web developers can try real sites, reduce failures, and file useful reports. Curious users can see how far an independent engine has come. People who simply need another private daily browser should wait. Compatibility, stability, packaging, and polish are still moving targets.

What happened when we ran it

We cloned commit 1933563 into an unprivileged Debian container with 3 CPUs and 8 GB of RAM. The lab identified a Python ecosystem path, installed 33 packages in 13 seconds, and measured 36 MB of installed dependencies. Its detected build completed in 5 seconds. The Python dependency audit reported no known vulnerabilities.

The harness found no test script or target, so it skipped tests. That is an important limit on the result. Ladybird's repository contains extensive C++ browser code and its official build requires Qt, Rust, CMake, Ninja, and a suitable compiler. A 5-second success on the detected path cannot prove that the full browser was compiled, launched, or passed its own engine test suites. It records only what the sandbox reached.

The checkout itself was substantial: 28,242 files, about 1,553,307 lines of source, and 161.5 MB. There were 16 CI workflow files, no Dockerfile, and no top-level tests directory detected by the lab. The CI footprint shows active automation, while the absent detected test target means our run provides no independent compatibility or regression result.

The source build requires Qt 6.9 and CMake 3.30

The website presents a 3-command path: clone the repository, enter it, and run ./Meta/ladybird.py run. The detailed instructions reveal the host preparation behind that tidy example. You need Qt 6.9 or newer, CMake 3.30 or newer, a Rust toolchain, nasm, Ninja, graphics and audio development packages, and a C++23-capable compiler. Ladybird's CI currently uses gcc 14 and clang 21.

Distribution age matters. The docs specifically warn that Debian 13 provides Qt 6.8, which is too old to configure Ladybird. Ubuntu users may need Kitware's CMake repository and LLVM's package repository. Windows users are directed to WSL2; the native Clang-CL path is experimental and has limited functionality. WSL1 and MinGW are unsupported. Linux and macOS are the platforms a prospective tester should choose.

The build helper manages much of the compilation, yet local failures can still demand CMake and vcpkg log reading. The documentation calls out a misleading Ninja error that can really mean a third-party dependency failed. It also explains how to cap parallel link jobs on machines with limited memory. Resource placement is another packaging concern: icons, fonts, and themes depend on files copied from the base resource directory, and an incorrect CMake data path breaks them.

Non-maintainers cannot submit code pull requests

Ladybird is open source under the 2-clause BSD license, but it does not accept code pull requests from non-maintainers. The project asks outside contributors for bug reports, reduced test cases, website testing, standards discussion, security reports, and technical feedback. That is a deliberate governance choice, and it changes the pitch for developers who expect to fix an issue and submit the patch themselves.

The repository is plainly active. Its last push was August 27, 2026, and issues and pull requests were being updated the same day. Current work included certificate-chain handling on Linux, renderer state, WebRTC audio, and response cleanup. GitHub showed 536 open issues and pull requests combined, which is a work queue rather than a count of confirmed bugs. The project has not published a GitHub release.

The public target is a first alpha for Linux and macOS in 2026, aimed at developers and early adopters. The website says Windows support will follow later and mobile is not a current focus. Those are stated targets, not evidence that a general-user release is ready.

Ladybird is for browser work, not daily browsing

Choose Ladybird when the work itself is browser research, standards testing, or early compatibility feedback. Its independent engine and readable development process make it more interesting than another shell around Chromium. The active repository and detailed build notes also give serious testers enough material to get oriented.

Do not choose it as the browser layer for a product, a managed desktop fleet, or ordinary family use. There are no normal release artifacts, the supported build path asks for current native toolchains, and the maintainers explicitly restrict the audience to developers. Servo is a closer experimental comparison, especially for Rust and embedding. Chromium and WebKit are the practical choices when compatibility and production history decide the purchase. Ladybird earns attention now, while daily use should wait for evidence from an actual alpha.

Alternatives

ProjectWhat it isPick it when
Servo gh↗An experimental Rust browser engine with an embeddable WebView API.pick this instead when Rust, embedding, or parallel browser-engine research matters more than trying Ladybird's standalone browser.
Chromium gh↗The open-source browser project behind Chrome and many production browsers.pick this instead when you need broad site compatibility and a production browser base today.
WebKit gh↗The mature browser engine used by Safari and other applications.pick this instead when shipping an embedded or Apple-platform browser matters more than working on a new engine.

What people are saying

  1. [github-trending] LadybirdBrowser/ladybird

Sources

  1. Ladybird README
  2. Ladybird build instructions
  3. Ladybird contribution policy
  4. Ladybird project website and FAQ
  5. Ladybird issues and pull requests
  6. Ladybird releases

More web reviews

dioramas · elpis · deepseek-whale-girl · floorplan-3d · taro · driver.js · the whole board →