OpenSource-Hub

ladybird

Application

LadybirdBrowser/ladybird

An independent web browser with a novel engine built on web standards.

Overview

Ladybird is a truly independent web browser using a novel engine based on web standards. It features a multi-process architecture with sandboxed renderer processes, out-of-process image decoding and networking, and components inherited from SerenityOS such as LibWeb and LibJS. Currently pre-alpha, it runs on Linux, macOS, Windows via WSL2, and other Unix-likes.

README Preview

# Ladybird\n\n[Ladybird](https://ladybird.org) is a truly independent web browser, using a novel engine based on web standards.\n\n> [!IMPORTANT]\n> Ladybird is in a pre-alpha state, and only suitable for use by developers\n>\n\n## Features\n\nWe aim to build a complete, usable browser for the modern web.\n\nLadybird uses a multi-process architecture with a main UI process, several WebContent renderer processes,\nan ImageDecoder process, and a RequestServer process.\n\nImage decoding and network connections are done out of process to be more robust against malicious content.\nEach tab has its own renderer process, which is sandboxed from the rest of the system.\n\nAt the moment, many core library support components are inherited from SerenityOS:\n\n- LibWeb: Web rendering engine\n- LibJS: JavaScript engine\n- LibWasm: WebAssembly implementation\n- LibCrypto/LibTLS: Cryptography primitives and Transport Layer Security\n- LibHTTP: HTTP/1.1 client\n- LibGfx: 2D Graphics Library, Image Decoding and Rendering\n- LibUnicode: Unicode and locale support\n- LibMedia: Audio and video playback\n- LibCore: Event loop, OS abstraction layer\n- LibIPC: Inter-process communication\n\n## How do I build and run this?\n\nSee [build instructions](Documentation/BuildInstructionsLadybird.md) for information on how to build Ladybird.\n\nLadybird runs on Linux, macOS, Windows (with WSL2), and many other \*Nixes.\n\n## How do I read the documentation?\n\nCode-related documentation can be found in the [documentation](Documentation/) folder.\n\n## Get in touch and participate!\n\nJoin [our Discord server](https://discord.gg/nvfjVJ4Svh) to participate in issue and development discussions.\n\nPlease read [Getting involved with Ladybird](Documentation/GettingStartedContributing.md) if you're new to Ladybird and want to help.\n\nBefore opening an issue, please see the [issue policy](CONTRIBUTING.md#issue-policy) and the [detailed issue-reporting guidelines](ISSUES.md).\n\nThe project participatio