ライブラリ / SDK
LadybirdBrowser/ladybird avatar
LadybirdBrowser/ladybird

Ladybird: READMEと実装範囲を読む

Ladybird は Web 標準に基づく独自エンジンを持つ真に独立した Web ブラウザ。マルチプロセス構成でタブはサンドボックス化される。現在は pre-alpha で開発者向け。

スター 66,186フォーク 3,156C++BSD-2-Clause

ひと目でわかる

これは何?
独立したウェブブラウザプロジェクト。プレアルファ段階にあり、マルチプロセスアーキテクチャとSerenityOS由来のライブラリを採用。
誰に向いている?
Ladybirdは現在開発者専用の状態にあり、ビルド手順と貢献ガイドラインはDocumentationディレクトリとCONTRIBUTING.mdに記載されている。
商用利用できる?
できます。BSD-2-Clause は寛容なライセンスで、著作権表示とライセンス表示を残せば、使用・改変・販売が可能です。
今もメンテナンスされている?
されています。最後のコミットは 1 日前です。
何の言語で書かれている?
主に C++ です(GitHub の言語統計による)。

回答はプロジェクトの GitHub データ(最終同期:2026年9月14日)と当サイトの分析に基づくもので、法的助言ではありません。

オープンソース詳細解説

Ladybird 独立ブラウザ、プレアルファ段階

READMEはLadybirdを、ウェブ標準に基づく新しいエンジンを使った真に独立したウェブブラウザと説明している。プロジェクトは明確にプレアルファ段階にあり、READMEは重要な注意として開発者専用であると警告している。目標は現代のウェブ向けの完全で使えるブラウザを構築することだが、READMEには現在どのウェブ標準が実装されているか、バージョン番号、リリース予定、ロードマップは記載されていない。ホームページはladybird.orgだが、README自体にプロジェクトの歴史に関する情報はない。リポジトリには現在532件のオープンなissueがあるが、READMEはこの数字とプロジェクトの安定性や成熟度を結び付けていない。どの標準がすでに使えるのかを知るには、ビルドドキュメントを確認するか、ブラウザを実際に実行して検証する必要がある。

Ladybird マルチプロセスアーキテクチャ

Ladybirdはマルチプロセスアーキテクチャを採用しており、メインのUIプロセス、複数のWebContentレンダラープロセス、ImageDecoderプロセス、RequestServerプロセスで構成される。画像デコードとネットワーク接続はプロセス外で実行され、READMEは悪意のあるコンテンツに対してより堅牢にするためだと説明している。各タブには独自のレンダラープロセスがあり、システムの他の部分からサンドボックス化されている。この設計は、ネットワークリクエストと画像デコードがレンダラープロセス内部で直接発生しないことを意味し、攻撃対象領域を縮小する。READMEはどのサンドボックス機構を使用するか、どのようなセキュリティ保証があるかは明記しておらず、これらはコードや独立した監査で検証する必要がある。

Ladybird SerenityOS由来のライブラリ

コアライブラリの多くはSerenityOSから引き継がれている。LibWebはウェブレンダリングエンジン、LibJSはJavaScriptエンジン、LibWasmはWebAssemblyの実装、LibCrypto/LibTLSは暗号プリミティブとTLS、LibHTTPはHTTP/1.1クライアント、LibGfxは2Dグラフィックス、画像デコードとレンダリング、LibUnicodeはUnicodeとロケール対応、LibMediaは音声と動画の再生、LibCoreはイベントループとOS抽象化層、LibIPCはプロセス間通信を担当する。READMEには、これらのライブラリがLadybird向けにどの程度変更されているか、現在のSerenityOSコードベースとどの程度同期しているかは記載されておらず、各ライブラリのドキュメントで確認する必要がある。

Ladybird ビルドドキュメントと対応プラットフォーム

READMEはビルド手順についてDocumentation/BuildInstructionsLadybird.mdを参照するよう案内しているが、手順そのものやビルドコマンドを再掲していない。実際の手順を得るにはドキュメントディレクトリ内のビルド説明ファイルを確認する必要がある。LadybirdはLinux、macOS、Windows(WSL2経由)、その他多くのNix系システムで動作する。READMEには、特定のディストリビューション要件、コンパイラのバージョン、ビルド依存関係、最低ハードウェア構成は記載されていない。リポジトリはC++で書かれており、デフォルトブランチはmasterだが、使用するC++標準やテスト済みのコンパイラについてはREADMEに記載がなく、ビルドドキュメントやCI設定から確認する必要がある。

Ladybird 貢献とissue報告

新規貢献者はDocumentation/GettingStartedContributing.mdを読むよう案内されている。issueを開く前に、READMEはCONTRIBUTING.mdのissueポリシーとISSUES.mdの詳細なissue報告ガイドラインを確認するよう求めている。参加ガイドラインはCONTRIBUTING.mdにある。開発とissueの議論はREADMEにリンクされたDiscordサーバーで行われている。READMEにはメーリングリストやフォーラム、その他のコミュニケーションチャネルについての記述はなく、メンテナの応答時間や貢献レビューの流れについても記載されていない。具体的な貢献プロセスと応答時間については、CONTRIBUTING.mdやDiscordで加えて確認する必要がある。

Ladybird ライセンス

Ladybirdは2条項BSDライセンスの下で提供されており、著作権は2018年から現在までのLadybird開発者が保有している。ライセンスはソースコード形式とバイナリ形式の両方での再配布と使用を許可するが、ソースコードの再配布は著作権表示、条件リスト、免責事項を保持しなければならず、バイナリ形式の再配布は文書やその他の資料に同じ表示を再現しなければならない。ライセンスはソフトウェアを現状のまま提供し、商品性や特定目的への適合性を含む明示的および暗黙の保証をすべて否認し、一切の責任を負わないと明記している。ライセンスはサポート義務、セキュリティ報告の手順、貢献者のライセンス取り扱いについては何も述べておらず、これらの点はプロジェクトのドキュメントで個別に確認する必要がある。

試す際は対応OSとビルド方式を固定し、READMEの依存関係を満たした環境で最小のビルドを行います。ブラウザとして評価するなら、HTML、CSS、JavaScript、画像、TLSを含む同じテストページを既存ブラウザと比較し、未対応機能を実装済みと扱わないことが大切です。Webサイト互換性、拡張機能、動画再生、開発者ツールなどREADMEが説明していない領域は、採用判断の前提に含めず個別に確認します。

Ladybirdについては、READMEに書かれた入口と生成物を照合し、未記載の保証を機能として数えない判断が必要です。

編集部の結論

Ladybirdは現在開発者専用の状態にあり、ビルド手順と貢献ガイドラインはDocumentationディレクトリとCONTRIBUTING.mdに記載されている。

公式情報源

  1. Official documentation
  2. Official README
  3. Project repository
コミュニティノート

コミュニティノート