LadybirdBrowser/ladybirdPublic

Truly independent web browser

AI summary: A truly independent web browser utilizing a novel engine based on modern web standards.

Stars
66.4K
+23 today
Forks
3.2K
Watchers
307
Open issues
501
Open PRs
76
Contributors
~1.5K
Commits
86.6K
Branches
1

C++BSD-2-ClauseCreated May 30, 2024Last push today+101 stars this week+406 this month

Quick answers

What is ladybird?
A truly independent web browser utilizing a novel engine based on modern web standards.
What does ladybird do?
Ladybird is a novel web browser built completely independently, without relying on legacy engines like Blink, Gecko, or WebKit. It features a custom-built rendering engine and JavaScript implementation designed from the ground up to adhere to modern web standards. Currently in a pre-alpha state, it is focused on establishing a clean architecture and correctly implementing the vast W3C and WHATWG specifications. The project aims to increase diversity in the web ecosystem by providing a viable, independent alternative built entirely from scratch. It prioritizes correctness and modern C++ design principles as it progressively supports more of the web platform.
Who is ladybird for?
Ladybird is currently intended for systems programmers, web standards enthusiasts, and developers interested in browser engine architecture. As a pre-alpha project, it is not yet meant for daily end-user browsing.
How do I get started with ladybird?
git clone https://github.com/LadybirdBrowser/ladybird.git
How popular is ladybird on GitHub?
LadybirdBrowser/ladybird has 66,402 stars and 3,161 forks on GitHub, and gained 101 stars in the last 7 days.
What license does ladybird use?
LadybirdBrowser/ladybird is released under the BSD-2-Clause license.

Star history

since Jun 9, 2024
020K40K60KJun 2024Mar 2025Dec 2025Oct 2026
66.4K stars as of Oct 4, 2026. Before Jul 28, 2026, reconstructed from public GitHub event archives (checked against the repository's real star total); since then measured daily.

Contribution activity

commits per day, last 52 weeks
OctNovDecJanFebMarAprMayJunJulAugSepMonWedFri2025-10-05: 4 commits2025-10-06: 22 commits2025-10-07: 23 commits2025-10-08: 14 commits2025-10-09: 23 commits2025-10-10: 38 commits2025-10-11: 8 commits2025-10-12: 5 commits2025-10-13: 24 commits2025-10-14: 16 commits2025-10-15: 18 commits2025-10-16: 13 commits2025-10-17: 13 commits2025-10-18: 10 commits2025-10-19: 7 commits2025-10-20: 23 commits2025-10-21: 31 commits2025-10-22: 22 commits2025-10-23: 21 commits2025-10-24: 18 commits2025-10-25: 8 commits2025-10-26: 17 commits2025-10-27: 10 commits2025-10-28: 42 commits2025-10-29: 27 commits2025-10-30: 46 commits2025-10-31: 24 commits2025-11-01: 16 commits2025-11-02: 16 commits2025-11-03: 30 commits2025-11-04: 21 commits2025-11-05: 31 commits2025-11-06: 23 commits2025-11-07: 21 commits2025-11-08: 16 commits2025-11-09: 7 commits2025-11-10: 16 commits2025-11-11: 14 commits2025-11-12: 21 commits2025-11-13: 22 commits2025-11-14: 11 commits2025-11-15: 11 commits2025-11-16: 4 commits2025-11-17: 26 commits2025-11-18: 27 commits2025-11-19: 8 commits2025-11-20: 20 commits2025-11-21: 25 commits2025-11-22: 21 commits2025-11-23: 24 commits2025-11-24: 22 commits2025-11-25: 17 commits2025-11-26: 31 commits2025-11-27: 35 commits2025-11-28: 23 commits2025-11-29: 26 commits2025-11-30: 14 commits2025-12-01: 27 commits2025-12-02: 22 commits2025-12-03: 21 commits2025-12-04: 52 commits2025-12-05: 18 commits2025-12-06: 7 commits2025-12-07: 14 commits2025-12-08: 17 commits2025-12-09: 19 commits2025-12-10: 30 commits2025-12-11: 28 commits2025-12-12: 21 commits2025-12-13: 18 commits2025-12-14: 8 commits2025-12-15: 40 commits2025-12-16: 20 commits2025-12-17: 20 commits2025-12-18: 30 commits2025-12-19: 11 commits2025-12-20: 16 commits2025-12-21: 7 commits2025-12-22: 7 commits2025-12-23: 5 commits2025-12-24: 9 commits2025-12-25: 10 commits2025-12-26: 20 commits2025-12-27: 17 commits2025-12-28: 9 commits2025-12-29: 16 commits2025-12-30: 18 commits2025-12-31: 7 commits2026-01-01: 2 commits2026-01-02: 15 commits2026-01-03: 13 commits2026-01-04: 21 commits2026-01-05: 30 commits2026-01-06: 39 commits2026-01-07: 23 commits2026-01-08: 39 commits2026-01-09: 23 commits2026-01-10: 26 commits2026-01-11: 32 commits2026-01-12: 24 commits2026-01-13: 39 commits2026-01-14: 28 commits2026-01-15: 28 commits2026-01-16: 28 commits2026-01-17: 10 commits2026-01-18: 24 commits2026-01-19: 27 commits2026-01-20: 27 commits2026-01-21: 45 commits2026-01-22: 28 commits2026-01-23: 33 commits2026-01-24: 14 commits2026-01-25: 11 commits2026-01-26: 49 commits2026-01-27: 21 commits2026-01-28: 25 commits2026-01-29: 32 commits2026-01-30: 25 commits2026-01-31: 29 commits2026-02-01: 19 commits2026-02-02: 27 commits2026-02-03: 23 commits2026-02-04: 27 commits2026-02-05: 31 commits2026-02-06: 25 commits2026-02-07: 21 commits2026-02-08: 31 commits2026-02-09: 48 commits2026-02-10: 51 commits2026-02-11: 65 commits2026-02-12: 32 commits2026-02-13: 26 commits2026-02-14: 38 commits2026-02-15: 35 commits2026-02-16: 43 commits2026-02-17: 51 commits2026-02-18: 29 commits2026-02-19: 51 commits2026-02-20: 34 commits2026-02-21: 86 commits2026-02-22: 36 commits2026-02-23: 39 commits2026-02-24: 57 commits2026-02-25: 28 commits2026-02-26: 38 commits2026-02-27: 44 commits2026-02-28: 39 commits2026-03-01: 35 commits2026-03-02: 16 commits2026-03-03: 33 commits2026-03-04: 30 commits2026-03-05: 30 commits2026-03-06: 22 commits2026-03-07: 34 commits2026-03-08: 41 commits2026-03-09: 17 commits2026-03-10: 22 commits2026-03-11: 21 commits2026-03-12: 22 commits2026-03-13: 26 commits2026-03-14: 14 commits2026-03-15: 20 commits2026-03-16: 29 commits2026-03-17: 33 commits2026-03-18: 28 commits2026-03-19: 37 commits2026-03-20: 32 commits2026-03-21: 46 commits2026-03-22: 76 commits2026-03-23: 23 commits2026-03-24: 18 commits2026-03-25: 42 commits2026-03-26: 27 commits2026-03-27: 44 commits2026-03-28: 25 commits2026-03-29: 36 commits2026-03-30: 37 commits2026-03-31: 50 commits2026-04-01: 32 commits2026-04-02: 20 commits2026-04-03: 29 commits2026-04-04: 43 commits2026-04-05: 24 commits2026-04-06: 22 commits2026-04-07: 24 commits2026-04-08: 23 commits2026-04-09: 26 commits2026-04-10: 20 commits2026-04-11: 13 commits2026-04-12: 31 commits2026-04-13: 38 commits2026-04-14: 46 commits2026-04-15: 27 commits2026-04-16: 44 commits2026-04-17: 40 commits2026-04-18: 24 commits2026-04-19: 16 commits2026-04-20: 16 commits2026-04-21: 37 commits2026-04-22: 51 commits2026-04-23: 43 commits2026-04-24: 40 commits2026-04-25: 78 commits2026-04-26: 43 commits2026-04-27: 25 commits2026-04-28: 30 commits2026-04-29: 83 commits2026-04-30: 38 commits2026-05-01: 13 commits2026-05-02: 12 commits2026-05-03: 35 commits2026-05-04: 25 commits2026-05-05: 27 commits2026-05-06: 30 commits2026-05-07: 31 commits2026-05-08: 27 commits2026-05-09: 18 commits2026-05-10: 12 commits2026-05-11: 31 commits2026-05-12: 27 commits2026-05-13: 31 commits2026-05-14: 50 commits2026-05-15: 65 commits2026-05-16: 35 commits2026-05-17: 25 commits2026-05-18: 38 commits2026-05-19: 37 commits2026-05-20: 52 commits2026-05-21: 82 commits2026-05-22: 61 commits2026-05-23: 30 commits2026-05-24: 49 commits2026-05-25: 30 commits2026-05-26: 38 commits2026-05-27: 68 commits2026-05-28: 49 commits2026-05-29: 25 commits2026-05-30: 32 commits2026-05-31: 34 commits2026-06-01: 40 commits2026-06-02: 35 commits2026-06-03: 41 commits2026-06-04: 41 commits2026-06-05: 37 commits2026-06-06: 43 commits2026-06-07: 34 commits2026-06-08: 36 commits2026-06-09: 35 commits2026-06-10: 55 commits2026-06-11: 55 commits2026-06-12: 55 commits2026-06-13: 32 commits2026-06-14: 41 commits2026-06-15: 27 commits2026-06-16: 30 commits2026-06-17: 30 commits2026-06-18: 42 commits2026-06-19: 51 commits2026-06-20: 14 commits2026-06-21: 19 commits2026-06-22: 36 commits2026-06-23: 18 commits2026-06-24: 20 commits2026-06-25: 32 commits2026-06-26: 15 commits2026-06-27: 36 commits2026-06-28: 13 commits2026-06-29: 26 commits2026-06-30: 21 commits2026-07-01: 28 commits2026-07-02: 43 commits2026-07-03: 31 commits2026-07-04: 49 commits2026-07-05: 40 commits2026-07-06: 38 commits2026-07-07: 87 commits2026-07-08: 83 commits2026-07-09: 58 commits2026-07-10: 66 commits2026-07-11: 65 commits2026-07-12: 75 commits2026-07-13: 34 commits2026-07-14: 69 commits2026-07-15: 55 commits2026-07-16: 67 commits2026-07-17: 89 commits2026-07-18: 99 commits2026-07-19: 39 commits2026-07-20: 55 commits2026-07-21: 94 commits2026-07-22: 56 commits2026-07-23: 99 commits2026-07-24: 42 commits2026-07-25: 41 commits2026-07-26: 112 commits2026-07-27: 44 commits2026-07-28: 56 commits2026-07-29: 39 commits2026-07-30: 33 commits2026-07-31: 32 commits2026-08-01: 24 commits2026-08-02: 28 commits2026-08-03: 15 commits2026-08-04: 28 commits2026-08-05: 20 commits2026-08-06: 59 commits2026-08-07: 32 commits2026-08-08: 28 commits2026-08-09: 37 commits2026-08-10: 54 commits2026-08-11: 30 commits2026-08-12: 108 commits2026-08-13: 70 commits2026-08-14: 61 commits2026-08-15: 38 commits2026-08-16: 70 commits2026-08-17: 77 commits2026-08-18: 11 commits2026-08-19: 59 commits2026-08-20: 74 commits2026-08-21: 112 commits2026-08-22: 110 commits2026-08-23: 52 commits2026-08-24: 82 commits2026-08-25: 74 commits2026-08-26: 50 commits2026-08-27: 27 commits2026-08-28: 81 commits2026-08-29: 45 commits2026-08-30: 68 commits2026-08-31: 36 commits2026-09-01: 83 commits2026-09-02: 81 commits2026-09-03: 83 commits2026-09-04: 66 commits2026-09-05: 88 commits2026-09-06: 341 commits2026-09-07: 95 commits2026-09-08: 79 commits2026-09-09: 64 commits2026-09-10: 88 commits2026-09-11: 67 commits2026-09-12: 55 commits2026-09-13: 96 commits2026-09-14: 92 commits2026-09-15: 50 commits2026-09-16: 149 commits2026-09-17: 96 commits2026-09-18: 54 commits2026-09-19: 125 commits2026-09-20: 32 commits2026-09-21: 38 commits2026-09-22: 67 commits2026-09-23: 27 commits2026-09-24: 52 commits2026-09-25: 59 commits2026-09-26: 18 commits2026-09-27: 18 commits2026-09-28: 52 commits2026-09-29: 48 commits2026-09-30: 56 commits2026-10-01: 257 commits2026-10-02: 259 commits2026-10-03: 76 commits
14,084 commits in the last yearLessMore

Signals and awards

derived from tracked data
  • Landmark project

    66,402 stars

  • Very active

    14,084 commits in 52 weeks

  • Community-driven

    ~1,547 contributors

  • Permissive license

    BSD-2-Clause

  • Continuous integration

    Automated checks passing

  • Repeat trending

    10 trending appearances

What ladybird does

Ladybird is a novel web browser built completely independently, without relying on legacy engines like Blink, Gecko, or WebKit. It features a custom-built rendering engine and JavaScript implementation designed from the ground up to adhere to modern web standards. Currently in a pre-alpha state, it is focused on establishing a clean architecture and correctly implementing the vast W3C and WHATWG specifications. The project aims to increase diversity in the web ecosystem by providing a viable, independent alternative built entirely from scratch. It prioritizes correctness and modern C++ design principles as it progressively supports more of the web platform.

Ladybird is currently intended for systems programmers, web standards enthusiasts, and developers interested in browser engine architecture. As a pre-alpha project, it is not yet meant for daily end-user browsing.

  • Independent rendering engine: Implements HTML and CSS parsing entirely from scratch without legacy code.
  • Custom architecture: Uses a novel, bespoke engine rather than relying on established browser projects.
  • Standards compliance: Focuses on accurately implementing modern W3C and WHATWG web specifications.
  • Clean C++ codebase: Maintains a highly readable and modular architecture for easier open-source contribution.
  • Ecosystem diversity: Aims to provide a completely independent alternative to the major browser engine monocultures.

Where teams use it

Web engine research

Computer science students can study a modern, independent implementation of complex web standards.

C++ systems development

Systems programmers can contribute to a large-scale, modern C++ open-source browser project.

Standards verification

Web developers can eventually use Ladybird to test websites against a completely independent rendering engine.

Browser engine diversity

Enthusiasts can support and follow the development of a browser that challenges the current engine oligopoly.

Getting started: git clone https://github.com/LadybirdBrowser/ladybird.git

README

master branch

Ladybird

Ladybird is a truly independent web browser, using a novel engine based on web standards.

Important

Ladybird is in a pre-alpha state, and only suitable for use by developers

Features

We aim to build a complete, usable browser for the modern web.

Ladybird uses a multi-process architecture with a main UI process, several WebContent renderer processes, an ImageDecoder process, and a RequestServer process.

Image decoding and network connections are done out of process to be more robust against malicious content. Each tab has its own renderer process, which is sandboxed from the rest of the system.

At the moment, many core library support components are inherited from SerenityOS:

  • LibWeb: Web rendering engine
  • LibJS: JavaScript engine
  • LibWasm: WebAssembly implementation
  • LibCrypto/LibTLS: Cryptography primitives and Transport Layer Security
  • LibHTTP: HTTP/1.1 client
  • LibGfx: 2D Graphics Library, Image Decoding and Rendering
  • LibUnicode: Unicode and locale support
  • LibMedia: Audio and video playback
  • LibCore: Event loop, OS abstraction layer
  • LibIPC: Inter-process communication

How do I build and run this?

See build instructions for information on how to build Ladybird.

Ladybird runs on Linux, macOS, Windows (with WSL2), and many other *Nixes.

How do I read the documentation?

Code-related documentation can be found in the documentation folder.

Get in touch and participate!

Join our Discord server to participate in issue and development discussions.

Please read Getting involved with Ladybird if you're new to Ladybird and want to help.

Before opening an issue, please see the issue policy and the detailed issue-reporting guidelines.

The project participation guidelines can be found in CONTRIBUTING.md.

License

Ladybird is licensed under a 2-clause BSD license.

View on GitHub

Recent activity

commits and pull requests

Recent open issues

view all

Commits per week

last 52 weeks
7890Week of 2025-10-05: 132 commitsWeek of 2025-10-12: 99 commitsWeek of 2025-10-19: 130 commitsWeek of 2025-10-26: 182 commitsWeek of 2025-11-02: 158 commitsWeek of 2025-11-09: 102 commitsWeek of 2025-11-16: 131 commitsWeek of 2025-11-23: 178 commitsWeek of 2025-11-30: 161 commitsWeek of 2025-12-07: 147 commitsWeek of 2025-12-14: 145 commitsWeek of 2025-12-21: 75 commitsWeek of 2025-12-28: 80 commitsWeek of 2026-01-04: 201 commitsWeek of 2026-01-11: 189 commitsWeek of 2026-01-18: 198 commitsWeek of 2026-01-25: 192 commitsWeek of 2026-02-01: 173 commitsWeek of 2026-02-08: 291 commitsWeek of 2026-02-15: 329 commitsWeek of 2026-02-22: 281 commitsWeek of 2026-03-01: 200 commitsWeek of 2026-03-08: 163 commitsWeek of 2026-03-15: 225 commitsWeek of 2026-03-22: 255 commitsWeek of 2026-03-29: 247 commitsWeek of 2026-04-05: 152 commitsWeek of 2026-04-12: 250 commitsWeek of 2026-04-19: 281 commitsWeek of 2026-04-26: 244 commitsWeek of 2026-05-03: 193 commitsWeek of 2026-05-10: 251 commitsWeek of 2026-05-17: 325 commitsWeek of 2026-05-24: 291 commitsWeek of 2026-05-31: 271 commitsWeek of 2026-06-07: 302 commitsWeek of 2026-06-14: 235 commitsWeek of 2026-06-21: 176 commitsWeek of 2026-06-28: 211 commitsWeek of 2026-07-05: 437 commitsWeek of 2026-07-12: 488 commitsWeek of 2026-07-19: 426 commitsWeek of 2026-07-26: 340 commitsWeek of 2026-08-02: 210 commitsWeek of 2026-08-09: 398 commitsWeek of 2026-08-16: 513 commitsWeek of 2026-08-23: 411 commitsWeek of 2026-08-30: 505 commitsWeek of 2026-09-06: 789 commitsWeek of 2026-09-13: 662 commitsWeek of 2026-09-20: 293 commitsWeek of 2026-09-27: 766 commitsOct 5, 2025Sep 27, 2026
14.1K commits in the last 52 weeks.

When work happens

weekday and hour
SunMonTueWedThuFriSat036912151821Sun 0:00 — 82 commitsSun 1:00 — 80 commitsSun 2:00 — 55 commitsSun 3:00 — 53 commitsSun 4:00 — 44 commitsSun 5:00 — 35 commitsSun 6:00 — 35 commitsSun 7:00 — 40 commitsSun 8:00 — 62 commitsSun 9:00 — 72 commitsSun 10:00 — 74 commitsSun 11:00 — 147 commitsSun 12:00 — 156 commitsSun 13:00 — 164 commitsSun 14:00 — 151 commitsSun 15:00 — 123 commitsSun 16:00 — 180 commitsSun 17:00 — 201 commitsSun 18:00 — 170 commitsSun 19:00 — 145 commitsSun 20:00 — 157 commitsSun 21:00 — 121 commitsSun 22:00 — 95 commitsSun 23:00 — 89 commitsMon 0:00 — 97 commitsMon 1:00 — 79 commitsMon 2:00 — 83 commitsMon 3:00 — 30 commitsMon 4:00 — 27 commitsMon 5:00 — 10 commitsMon 6:00 — 19 commitsMon 7:00 — 49 commitsMon 8:00 — 71 commitsMon 9:00 — 90 commitsMon 10:00 — 115 commitsMon 11:00 — 135 commitsMon 12:00 — 144 commitsMon 13:00 — 169 commitsMon 14:00 — 173 commitsMon 15:00 — 178 commitsMon 16:00 — 183 commitsMon 17:00 — 216 commitsMon 18:00 — 174 commitsMon 19:00 — 114 commitsMon 20:00 — 120 commitsMon 21:00 — 131 commitsMon 22:00 — 132 commitsMon 23:00 — 102 commitsTue 0:00 — 96 commitsTue 1:00 — 66 commitsTue 2:00 — 59 commitsTue 3:00 — 37 commitsTue 4:00 — 42 commitsTue 5:00 — 33 commitsTue 6:00 — 26 commitsTue 7:00 — 60 commitsTue 8:00 — 50 commitsTue 9:00 — 93 commitsTue 10:00 — 163 commitsTue 11:00 — 152 commitsTue 12:00 — 178 commitsTue 13:00 — 161 commitsTue 14:00 — 220 commitsTue 15:00 — 219 commitsTue 16:00 — 212 commitsTue 17:00 — 177 commitsTue 18:00 — 158 commitsTue 19:00 — 155 commitsTue 20:00 — 143 commitsTue 21:00 — 165 commitsTue 22:00 — 162 commitsTue 23:00 — 135 commitsWed 0:00 — 113 commitsWed 1:00 — 76 commitsWed 2:00 — 38 commitsWed 3:00 — 36 commitsWed 4:00 — 30 commitsWed 5:00 — 22 commitsWed 6:00 — 34 commitsWed 7:00 — 54 commitsWed 8:00 — 69 commitsWed 9:00 — 103 commitsWed 10:00 — 140 commitsWed 11:00 — 223 commitsWed 12:00 — 261 commitsWed 13:00 — 184 commitsWed 14:00 — 188 commitsWed 15:00 — 205 commitsWed 16:00 — 236 commitsWed 17:00 — 207 commitsWed 18:00 — 112 commitsWed 19:00 — 125 commitsWed 20:00 — 135 commitsWed 21:00 — 129 commitsWed 22:00 — 165 commitsWed 23:00 — 145 commitsThu 0:00 — 101 commitsThu 1:00 — 59 commitsThu 2:00 — 50 commitsThu 3:00 — 40 commitsThu 4:00 — 42 commitsThu 5:00 — 19 commitsThu 6:00 — 45 commitsThu 7:00 — 75 commitsThu 8:00 — 69 commitsThu 9:00 — 108 commitsThu 10:00 — 163 commitsThu 11:00 — 164 commitsThu 12:00 — 252 commitsThu 13:00 — 194 commitsThu 14:00 — 266 commitsThu 15:00 — 227 commitsThu 16:00 — 234 commitsThu 17:00 — 229 commitsThu 18:00 — 154 commitsThu 19:00 — 216 commitsThu 20:00 — 143 commitsThu 21:00 — 125 commitsThu 22:00 — 181 commitsThu 23:00 — 149 commitsFri 0:00 — 99 commitsFri 1:00 — 64 commitsFri 2:00 — 62 commitsFri 3:00 — 45 commitsFri 4:00 — 52 commitsFri 5:00 — 39 commitsFri 6:00 — 31 commitsFri 7:00 — 80 commitsFri 8:00 — 99 commitsFri 9:00 — 130 commitsFri 10:00 — 152 commitsFri 11:00 — 188 commitsFri 12:00 — 246 commitsFri 13:00 — 177 commitsFri 14:00 — 220 commitsFri 15:00 — 227 commitsFri 16:00 — 207 commitsFri 17:00 — 191 commitsFri 18:00 — 128 commitsFri 19:00 — 117 commitsFri 20:00 — 115 commitsFri 21:00 — 124 commitsFri 22:00 — 112 commitsFri 23:00 — 157 commitsSat 0:00 — 102 commitsSat 1:00 — 89 commitsSat 2:00 — 61 commitsSat 3:00 — 34 commitsSat 4:00 — 34 commitsSat 5:00 — 24 commitsSat 6:00 — 30 commitsSat 7:00 — 47 commitsSat 8:00 — 73 commitsSat 9:00 — 76 commitsSat 10:00 — 97 commitsSat 11:00 — 119 commitsSat 12:00 — 138 commitsSat 13:00 — 162 commitsSat 14:00 — 152 commitsSat 15:00 — 146 commitsSat 16:00 — 195 commitsSat 17:00 — 160 commitsSat 18:00 — 119 commitsSat 19:00 — 136 commitsSat 20:00 — 133 commitsSat 21:00 — 116 commitsSat 22:00 — 118 commitsSat 23:00 — 108 commits
Commit volume by weekday and hour (UTC). Larger dots mean more commits.
DateListRankStars gained
Aug 16, 2026weekly#12+819
Aug 15, 2026weekly#12+819
Aug 14, 2026weekly#9+775
Aug 13, 2026weekly#10+743
Aug 12, 2026daily#4+56
Aug 12, 2026weekly#12+679
Aug 11, 2026daily#4+56
Aug 10, 2026daily#7+48
Aug 9, 2026daily#7+48
Feb 26, 2026daily#24+169