GitHub

Project Description: Ladybird Web Browser

What is the project about?

Ladybird is a new, independent web browser built with a novel engine based on web standards. It's currently in a pre-alpha, developer-focused stage.

What problem does it solve?

It aims to provide a complete and usable browsing experience for the modern web, while offering a fresh, independent alternative in the browser landscape. It is designed with security in mind.

What are the features of the project?

  • Multi-process architecture (UI, WebContent renderers, ImageDecoder, RequestServer).
  • Out-of-process image decoding and network connections for enhanced security.
  • Sandboxed renderer processes for each tab.
  • Uses a set of libraries, many inherited from SerenityOS, for core functionalities like web rendering, JavaScript execution, cryptography, graphics, and more.

What are the technologies used in the project?

  • LibWeb (Web rendering engine)
  • LibJS (JavaScript engine)
  • LibWasm (WebAssembly implementation)
  • LibCrypto/LibTLS (Cryptography and TLS)
  • LibHTTP (HTTP/1.1 client)
  • LibGfx (2D Graphics, Image Decoding)
  • LibUnicode (Unicode support)
  • LibMedia (Audio/Video playback)
  • LibCore (Event loop, OS abstraction)
  • LibIPC (Inter-process communication)
  • Runs on Linux, macOS, Windows (with WSL2), and other *Nixes.

What are the benefits of the project?

  • Security: Multi-process architecture and sandboxing enhance security against malicious content.
  • Independence: A novel engine and independent codebase offer an alternative to existing browser monopolies.
  • Standards-based: Built on web standards for compatibility.

What are the use cases of the project?

  • Currently, it's primarily for developers interested in contributing to or experimenting with a new browser engine.
  • Eventually, it aims to be a general-purpose web browser for everyday use.
ladybird screenshot