#Ladybirdブラウザとは何か?非chromiumの真に独立したWebブラウザをゼロから構築するための進行中のプロジェクト #六21
https://github.com/LadybirdBrowser/ladybird より
Ladybirdブラウザとは何か?
Ladybirdブラウザの概要
Ladybirdは、オープンソースのウェブブラウザで、独自のウェブエンジンであるLibWebとLibJSを基盤に開発されています。このプロジェクトは、SerenityOSの一部として始まり、クロスプラットフォームでの利用を目指しています。Ladybirdは、ウェブ標準に準拠し、高速性、安定性、プライバシーを重視した設計が特徴です。
主な特徴
-
オープンソース: Ladybirdは完全にオープンソースであり、BSDライセンスの下で提供されています。これにより、誰でもソースコードにアクセスし、改善に貢献することができます。
-
独自のエンジン: Ladybirdは、LibWeb(ウェブエンジン)とLibJS(JavaScriptエンジン)を使用しており、これらは新たに開発されたもので、既存のブラウザエンジンとは異なるアプローチを取っています。
-
クロスプラットフォーム対応: 現在、Linux、macOS、Windows(WSL)およびAndroidで動作することが確認されています。特にLinux版が最もテストされています。
-
開発の進行状況: Ladybirdはまだ開発の初期段階にあり、多くのウェブプラットフォーム機能が未実装または不完全です。開発者たちは、機能の追加やバグ修正に注力しており、今後数年での成熟が期待されています。
開発の背景
Ladybirdブラウザは、SerenityOSプロジェクトの一環として、開発者のアンドレアス・クリングによって始められました。彼は、デバッグツールとしての利用を目的にブラウザを開発し、その後、より多くのユーザーに利用されることを目指してクロスプラットフォームのブラウザへと進化させました。
コミュニティと参加方法
Ladybirdは、コミュニティ主導のプロジェクトであり、開発に参加したい人々は、DiscordサーバーでのディスカッションやGitHubでのバグ修正を通じて貢献することができます。開発者たちは、ユーザーからのフィードバックを重視しており、ブラウザの機能向上に向けた協力を歓迎しています。
まとめ
Ladybirdブラウザは、オープンソースの新しいウェブブラウザとして、独自のエンジンを用いて開発が進められています。まだ初期段階ではありますが、将来的には多くの機能が追加され、より多くのユーザーに利用されることが期待されています。興味のある方は、開発に参加することでこのプロジェクトを支援することができます。
Ladybirdブラウザの開発の背景
開発の起源
Ladybirdブラウザは、元々SerenityOSという趣味のオペレーティングシステムの一部として開発されました。SerenityOSは、開発者のアンドレアス・クリングによって2018年に始まり、Ladybirdはその中でHTMLビューアとしてスタートしました。このプロジェクトは、ウェブブラウジングの体験を向上させることを目的としており、次第に独立したウェブブラウザへと進化しました。
独立したプロジェクトへの移行
2022年9月、アンドレアス・クリングはLadybirdを独立したプロジェクトとして発表しました。この決定は、より多くの機能を持つブラウザを開発するためのものであり、既存のブラウザエンジンに依存せず、完全に新しいエンジン(LibWeb)をゼロから構築することを目指しています。Ladybirdは、広告収入や企業取引に依存せず、ユーザーのプライバシーを重視したブラウザを提供することを目指しています。
非営利団体の設立
2024年7月、Ladybirdブラウザの開発を推進するために「Ladybird Browser Initiative」という非営利団体が設立されました。この団体は、GitHubの共同創設者であるクリス・ワンストラス氏の支援を受けており、資金調達はスポンサーシップや寄付に依存しています。このモデルにより、Ladybirdは広告収入に頼らず、ユーザー中心の開発を行うことが可能になります。
今後の展望
Ladybirdブラウザは、2026年にアルファ版のリリースを予定しており、その後、ベータ版や安定版のリリースが計画されています。開発チームは、オープンソースの原則に基づき、コミュニティからの貢献を歓迎しており、今後の機能追加や改善に向けた協力を求めています。
このように、Ladybirdブラウザは、独自のエンジンを持ち、ユーザーのプライバシーを重視した新しいブラウザとしての地位を確立しようとしています。
アンドレアス・クリングの背景(#1985アンドレアス・クリングざっくり解説)
基本情報
アンドレアス・クリングは、スウェーデン出身のプログラマーで、1985年に生まれました。彼は、オープンソースソフトウェアの開発に情熱を持ち、特にSerenityOSとLadybirdブラウザの創設者として知られています。
キャリアの初期
クリングは、若い頃からプログラミングに興味を持ち、ティーンエイジャーの頃に自作のオペレーティングシステムを開発していました。彼は、NokiaやAppleでの職務を経て、特にAppleではWebKitチームの一員として働いていました。彼のキャリアは、技術的なスキルを磨く場となり、後のプロジェクトに大きな影響を与えました。
SerenityOSの開発
2018年、クリングはSerenityOSの開発を開始しました。このプロジェクトは、彼の個人的な回復の一環として始まり、彼は薬物依存症からの回復を目指していました。プロジェクトの名前は「セレニティ・プラヤー」に由来しており、彼の新たなスタートを象徴しています。SerenityOSは、趣味のオペレーティングシステムとして、コミュニティによって支えられ、急速に成長しました。
Ladybirdブラウザの創設
2024年6月、クリングはLadybirdブラウザの開発を独立したプロジェクトとして進めることを発表しました。彼は、Ladybirdを完全にオープンソースで、企業の影響を受けないブラウザとして育てることを目指しています。同年7月には、Ladybirdブラウザの開発を支援するための非営利団体「Ladybird Browser Initiative」を設立し、資金調達を行っています。
個人的な背景
クリングは、プログラミングに対する情熱を持ちながらも、過去に薬物依存症に苦しんだ経験があります。彼はこの経験を通じて、自己改善と創造的な表現を追求するようになりました。彼のストーリーは、技術的な成功だけでなく、個人的な成長の物語でもあります。
このように、アンドレアス・クリングは、技術者としてのキャリアを築く一方で、個人的な挑戦を乗り越え、オープンソースコミュニティに貢献する重要な人物となっています。
Ladybirdブラウザの開発に影響を与えた技術的な挑戦
1. 新しいブラウザエンジンの構築
Ladybirdブラウザは、既存のブラウザエンジンに依存せず、完全に新しいエンジン(LibWeb)をゼロから構築することを目指しています。このアプローチは、技術的に非常に挑戦的であり、特に以下の点が挙げられます:
-
パフォーマンスの最適化: 新しいエンジンを開発する際には、速度と安定性を確保するための最適化が必要です。これには、効率的なメモリ管理や、ページのレンダリング速度を向上させるためのアルゴリズムの設計が含まれます。
-
ウェブ標準への準拠: Ladybirdは、最新のウェブ標準に準拠することを目指していますが、これには多くの技術的な課題が伴います。特に、HTML、CSS、JavaScriptの解釈と実行に関する正確性を確保することが重要です。
2. セキュリティとプライバシーの確保
Ladybirdは、ユーザーのプライバシーを重視した設計をしていますが、これには以下のような技術的な挑戦があります:
-
広告ブロック機能の実装: 効果的な広告ブロック機能を実装することは、ユーザーのプライバシーを守るために重要ですが、同時にウェブサイトの正常な動作を妨げないようにする必要があります。
-
データ保護: ユーザーのデータを保護するためのメカニズムを構築することも重要です。これには、サードパーティのクッキーをブロックする機能や、ユーザーの行動を追跡しないための設計が含まれます。
3. コミュニティとの協力
Ladybirdはオープンソースプロジェクトであり、コミュニティからの貢献を受け入れていますが、これにも技術的な挑戦があります:
-
貢献者の管理: 多くの開発者が参加する中で、コードの品質を維持し、バグを迅速に修正するためのプロセスを確立することが求められます。これには、効果的なバージョン管理やコードレビューの仕組みが必要です。
-
ユーザーからのフィードバックの取り入れ: ユーザーのニーズを理解し、それに応じた機能を追加することも重要です。これには、ユーザーからのフィードバックを収集し、優先順位をつけて開発を進める能力が求められます。
これらの技術的な挑戦は、Ladybirdブラウザの開発において重要な要素であり、成功するためにはこれらを克服する必要があります。
天道虫天道虫 web 標準に基づく新しいエンジンを使用して、真に独立した Web ブラウザです。
重要
Ladybird はアルファ前の状態にあり、開発者による使用にのみ適しています
特徴
私たちは、現代のウェブのための完全で使いやすいブラウザを構築することを目指しています。
Ladybird は、メイン UI プロセス、いくつかの WebContent レンダラー プロセス、ImageDecoder プロセス、および RequestServer プロセスを備えたマルチプロセス アーキテクチャを使用します。
イメージデコードとネットワーク接続は、悪意のあるコンテンツに対してより堅牢になるように、プロセス外で行われます。各タブには独自のレンダラプロセスがあり、システムの他の部分からサンドボックス化されています。
現時点では、多くのコアライブラリサポートコンポーネントが SerenityOS から継承されています:
- LibWeb: Web レンダリング エンジン
- LibJS: JavaScript エンジン
- LibWasm: WebAssembly の実装
- LibCrypto/LibTLS:暗号プリミティブとトランスポート層セキュリティ
- LibHTTP: HTTP/1。1 クライアント
- LibGfx: 2D グラフィックスライブラリ、画像デコードとレンダリング
- LibArchive: アーカイブファイル形式のサポート
- LibUnicode、LibLocale: Unicode とロケールのサポート
- LibAudio、LibMedia:オーディオとビデオの再生
- LibCore: イベントループ、OS 抽象化レイヤー
- LibIPC: プロセス間通信
これをどうやって作って実行するのか?
見る 構築命令 てんとう虫の作り方に関する情報。
Ladybird は、Linux、macOS、Windows(WSL2 搭載)、その他多くの *Nixes で動作します。
ドキュメントを読むにはどうすればよいですか?
コード関連のドキュメントは、次のセクションにあります ドキュメンテーション フォルダ。
連絡して参加してください!
参加する
問題を開く前に、を参照してください 問題ポリシー.
貢献するための一般的なガイドは、次の場所にあります CONTRIBUTING.md.
ライセンス
Ladybird は 2 条項 BSD ライセンスの下でライセンスされています。
コメント
コメントを投稿