cwbrowser: Zigで書かれた新しいブラウザエンジン
cwbrowser は、Zig システム言語でゼロから書かれた新しい軽量ウェブブラウザおよびレンダリングエンジンです。2 年にわたる単独開発の結果、従来の Chromium (Blink)、WebKit、Gecko エンジンに代わり、HTML パーサ、CSS カスケード、レイアウトエンジン、ペイントパイプラインを独自実装しています。
技術アーキテクチャ
cwbrowser はモダンなシステム言語を活用し、高性能かつ小さなフットプリントを実現しています。アーキテクチャは以下のコンポーネントに分かれます。
- Rendering Engine (Zig): パイプライン全体(トークナイザ、DOM 構築、CSS パーサ、レイアウト/ペイントステージを含む)はすべて Zig で手書きされています。このアプローチは手動メモリ管理を活用し、ガベージコレクタや隠れたランタイムを回避して効率を最大化します。
- JavaScript Engine (V8): 現代的な JIT コンパイル VM をゼロから作り直す十年規模の労力を回避するため、cwbrowser は Google の V8 エンジンを組み込みます。V8 はカスタム DOM にバインドされており、ブラウザは JavaScript 実行を処理しつつ独自のレンダリングパスを維持できます。
- Layout and Paint: エンジンは手書きのブロック/インラインレイアウトと、Acid3 リファレンスに合わせたピクセル描画を行うペイントパイプラインを実装しています。
パフォーマンスと標準準拠
開発者によると、cwbrowser は標準準拠のベンチマークである Acid3 テストで完璧な 100/100 のスコア を達成しています。初期のベンチマークでは、同じハードウェア上でエンジンが Google Chrome の約 2 倍の速度 であると主張しています。
コミュニティのフィードバックと技術的批評
Hacker News での発表後、プロジェクトは技術コミュニティから賛否両論の反応を受けました。単独開発者の成果を称賛する声もある一方で、複数の専門家がブラウザの現状と妥当性について批判的な指摘を行っています。
標準とテスト
批評家は Acid3 が時代遅れのベンチマークであると指摘しました。あるユーザーは、現代の仕様がテストから乖離しており、現在の Chrome、Safari、Firefox のバージョンは完璧に合格しなくなっていると述べました。さらに、コミュニティは Acid3 がウェブプラットフォーム全体の要件のごく一部に過ぎないことを強調しています。
"Acid3 is 100 tests but to have a browser that works on any real percentage of the internet you need to pass the over 52,000 tests and nearly two million subtests that make up the Web Platform Tests."
検証と透明性
複数のユーザーは、ソースコード、バイナリ、詳細な技術ドキュメントが入手できないことから、プロジェクトの真偽に懐疑的です。ランディングページが「vibe coded」や「AI slop」と表現され、手書きではなくエージェント生成された可能性が示唆されています。
機能ギャップ
技術的観測者は、利用可能なレンダリング結果からエンジンがまだ SVG をサポートしていないことを指摘し、Acid3 テスト以外の現代的で複雑なウェブページを描画できるかどうかのさらなる証拠を求めています。
入手可能性
macOS on Apple Silicon 用のパブリックプレビュー版が現在リリース準備中です。プロジェクトは現在オープンソースではなく、興味のあるユーザーはメールでベータ通知にサインアップできます。