OSS探訪

Ladybird — 独立したブラウザエンジンをWeb標準から実装する、C++製Webブラウザ

OSS健全度 91
スコアの見方

発掘スコアはStars・Watchers・Forks・Contributorsを対数圧縮して重み付けした独自指標(上限なし)。成長モメンタムは観測期間内の同スコアの差、OSS健全度は取得できた更新状況・Community Health・Releaseの0〜100評価です。

Stars
66,202
主要言語
C++
ライセンス
BSD-2-Clause
リポジトリ最終更新
2026/09/15

概要

Ladybirdは、既存ブラウザの派生ではなく、Web標準を基に独自エンジンを構築するオープンソースのWebブラウザです。C++を中心に、LibWeb・LibJS・LibWasmなどSerenityOS由来の基盤を発展させ、タブごとのrenderer、画像デコード、ネットワーク処理を分離したmulti-process構成を採用しています。ただし現時点ではpre-alphaで、公式READMEも開発者向けのみと明記しています。

特徴と向いている用途

公式資料に基づく紹介・実機未検証 · 内容確認日:

Web標準を基準に、独立したブラウザエンジンそのものを実装する

公式READMEはLadybirdを「truly independent web browser」と位置づけ、Web標準を基にした新しいエンジンを開発しています。単なるブラウザUIや既存エンジンのラッパーではなく、レンダリング・JavaScript・WebAssembly・TLS・HTTP・画像・Unicode・メディアなど、Webを動かす基盤をプロジェクト内で積み上げている点が中心です。

出典:[1]

タブ・画像デコード・ネットワークをprocess分離し、障害と悪意あるcontentの境界を作る

Ladybirdはmain UI processに加え、複数のWebContent renderer、ImageDecoder、RequestServerを分けるmulti-process architectureを採用しています。各タブは独立したrenderer processを持ち、READMEでは画像デコードとnetwork connectionもprocess外へ分離して、悪意あるcontentに対する堅牢性を高める設計だと説明されています。

出典:[1]

SerenityOS由来のLibWeb・LibJSなどを発展させ、ブラウザ基盤を一つのstackとして育てる

現時点ではLibWeb、LibJS、LibWasm、LibCrypto/LibTLS、LibHTTP、LibGfx、LibUnicode、LibMedia、LibCore、LibIPCなど多くのcore libraryをSerenityOSから継承しています。HTML/CSS renderingだけでなくJavaScript engineやWebAssembly、network、graphics、media、IPCまで含むため、browser engine全体の実装を追いたい開発者にとってコードベースそのものが教材になります。

出典:[1]

日常用ブラウザの代替ではなく、browser engineやWeb platformの実装を追いたい開発者に

browser engine、JavaScript runtime、Web標準、process isolation、graphics、network stackなどを横断して学びたい人や、独立系browser engineへcontributeしたい開発者に向きます。Linux・macOS・WindowsのWSL2・各種*nixで動かせるため、複数platformでbrowser implementationを検証したい場合にも比較価値があります。

まだpre-alphaで一般利用向けではなく、build環境も新しいtoolchainを要求する

公式READMEはLadybirdをpre-alphaとし、「only suitable for use by developers」と明記しています。日常利用する完成ブラウザとしてではなく、開発中のbrowser engineとして評価する必要があります。

公式build手順ではQt 6.9以上、C++23対応compiler、Rust toolchain、CMake 3.30以上、nasmなどが必要です。WindowsではWSL2がsupported pathで、native Windows buildはexperimentalです。最も簡単なbuild/run方法はrepository rootで./Meta/ladybird.py runを実行する方法ですが、初回buildは依存関係の準備を含むため軽量な試用ではありません。コードはBSD-2-Clauseです。

出典:[1][2][3]

参考にした公式資料

  1. [1]LadybirdBrowser/ladybird — README(2026-09-15)
  2. [2]Ladybird — Build instructions(2026-09-15)
  3. [3]LadybirdBrowser/ladybird — LICENSE(2026-09-15)
編集部からの補足

完成済みブラウザとしてではなく、Web標準からbrowser engine全体を作る過程そのものを追える点を評価しました。現時点ではpre-alphaかつ開発者向けなので、日常ブラウザの置き換えではなく、engine実装・Web platform・process isolationを学ぶOSSとして見るのが適切です。

3ステップで試す

  1. 1

    ソースを取得

    公式リポジトリを取得してLadybirdのルートへ移動します。

    git clone https://github.com/LadybirdBrowser/ladybird.git && cd ladybird
  2. 2

    build前提を揃える

    必要packageはOSごとに異なります。公式Build InstructionsのLinux・macOS・Windows WSL2等の手順に従ってください。

    Qt 6.9+ / C++23 compiler / Rust / CMake 3.30+ / nasm / Ninja
  3. 3

    buildして起動

    公式が案内する最も簡単なbuild/run方法です。初回は依存関係の準備を含みます。

    ./Meta/ladybird.py run
公式READMEで確認

成長

成長の推移 · 直近30日

66,202 Stars

推移データを蓄積中です。

開発アクティビティ

直近90日・週次

Commit(直近30日)
2,560
Open PR
34

開発アクティビティを蓄積中です。

Built with

カテゴリとタグ

カテゴリ

GitHubデータ

GitHubのデータGitHubの詳細データを見る

GitHub Topics

  • browser
  • browser-engine
Stars
66,202
Forks
3,156
Watchers
308
Open Issues
496
主要言語
C++
ライセンス
BSD-2-Clause
リポジトリ最終更新
2026/09/15
情報の誤りを報告

掲載内容に誤りや古い情報があればお知らせください。