ladybird
Truly independent web browser
Discover how Ladybird's Node client communicates with RequestServer using IPC. Understand the architecture behind JavaScript fetch calls and Promise resolutions.
How Ladybird Composites Web Content: The Painting Pipeline ExplainedDiscover the Ladybird Composites painting pipeline Learn how web content is rendered from layout trees to screen compositing with Skia and display lists
How Ladybird Applies CSS Styling and Layout to Web Content: Inside the LibWeb EngineDiscover how Ladybird applies CSS styling and layout via LibWeb's four-phase pipeline: parsing, selector matching, layout tree calculation, and painting. Learn the engine's process.
How Ladybird Loads and Parses HTML: Inside the Document Loading PipelineExplore Ladybird's document loading pipeline. Learn how it creates a Document object, tokenizes input, and constructs the DOM tree to render HTML efficiently.
How Ladybird Browser Handles JavaScript Execution and C++ BindingDiscover how Ladybird Browser executes JavaScript using LibJS and binds C++ objects through WebIDL-generated bindings. Learn about its VM, Realm, and PlatformObject implementation for seamless integration.
Security Implications of Ladybird's Multi-Process Architecture: Process Isolation ExplainedExplore Ladybird's multi-process architecture and its security benefits. Learn how process isolation protects your browser UI and system resources from untrusted web content.
How Ladybird Manages the Lifecycle of Its Service Processes: Android Multi-Process Architecture ExplainedLearn how Ladybird's Android multi-process architecture manages service lifecycles using LadybirdServiceBase, Android Service bindings, and JNI-native thread pools for isolated, sandboxed components.
How LibCore Handles File Descriptor Events and I/O Multiplexing in LadybirdLearn how LibCore uses poll poll system call and Core Notifier to manage file descriptor events and I/O multiplexing efficiently in Ladybird with ThreadData and wake pipes.
How Timer Events Are Handled in LibCore's EventLoopDiscover how LibCore's EventLoop handles timer events. Learn about registering Core::Timer objects, synthesizing TimerEvents, and dispatching callbacks for efficient event management.
Ladybird Browser's Rendering Pipeline for Web Content: Multi-Process Architecture ExplainedExplore Ladybird Browser's rendering pipeline. Learn how its multi-process architecture parses HTML/CSS, builds paint trees, and displays content efficiently.
How Ladybird Browser Is Built: CMake and vcpkg Build System ExplainedDiscover how Ladybird Browser builds using CMake and vcpkg. Learn about dependency management and cross-platform UI backend compilation.
LibGfx: The Core Graphics Engine Behind Ladybird's Rendering PipelineDiscover how LibGfx powers Ladybird's rendering pipeline. This core graphics engine abstracts pixel operations via a Painter API, enabling Skia, Vulkan, or Metal rendering without code changes.
Have a question about this repo?
These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:
curl -s "https://instagit.com/install.md" Maintain an open-source project? Get it listed too →