你是否厌倦了主流浏览器背后复杂的商业生态、频繁的数据采集与日益臃肿的代码?Ladybird 正是为此而生——它不是 Chromium 或 WebKit 的衍生品,而是一个完全自主实现、不依赖任何现有浏览器引擎的全新浏览器项目。它用一套自研的、严格遵循 Web 标准的底层组件,重新构建了渲染、脚本、网络、加密、音视频等全部核心能力,目标是成为互联网时代真正“可审计、可理解、可掌控”的开源浏览器。
核心功能
- 全栈自研引擎:基于 SerenityOS 生态演进而来,包含 LibWeb(HTML/CSS 渲染)、LibJS(JavaScript 引擎)、LibWasm(WebAssembly 支持)等全套组件,无外部浏览器内核依赖
- 多进程安全架构:UI 进程、每个标签页独立的 WebContent 渲染进程、专用 ImageDecoder 进程、RequestServer 网络进程——恶意图片或异常网页无法影响主界面或其他标签页
- 沙箱化隔离设计:所有渲染进程默认运行在操作系统级沙箱中,限制文件系统访问、系统调用权限,大幅提升对抗恶意网站的能力
- 跨平台原生支持:已稳定运行于 Linux(主流发行版)、macOS(Apple Silicon & Intel)、Windows(通过 WSL2),未来还将支持更多类 Unix 系统
- 轻量级协议栈与密码学基础:内置 LibHTTP(纯 C++ HTTP/1.1 客户端)、LibTLS(支持 TLS 1.2/1.3)、LibCrypto(AES、RSA、SHA 等完整实现),不捆绑 OpenSSL 等第三方库
- 现代化媒体与图形支持:LibMedia 提供音频解码与播放能力,LibGfx 实现高性能 2D 渲染与 PNG/JPEG/WebP 图像解码,为未来视频支持打下坚实基础
适合哪些人用
Ladybird 目前处于预 Alpha 阶段,尚未面向普通用户开放日常使用。它最适合以下几类开发者与技术爱好者:
- 关注浏览器原理、想深入理解 HTML 渲染流程与 JavaScript 执行机制的前端/系统工程师
- 重视软件自由与供应链安全的研究者、教育工作者、开源布道者
- 希望参与构建下一代开源基础设施的 C++ 工程师(项目代码清晰、模块划分合理、文档持续完善)
- SerenityOS 用户及社区贡献者,可无缝衔接其生态系统并反哺上游
请注意:当前版本尚不支持扩展、密码管理、同步、PDF 查看等常见功能,也不建议用于网银、办公等关键场景。
快速上手
想亲手编译运行 Ladybird?只需几步:
- 确保系统已安装 CMake(≥3.20)、Ninja、Python3、Git 及 C++20 兼容编译器(GCC 12+/Clang 15+)
- 克隆仓库:
git clone https://github.com/LadybirdBrowser/ladybird.git - 进入目录并执行构建脚本:
cd ladybird && ./Meta/BuildIt.sh(Linux/macOS)或参考 官方构建指南 配置 Windows + WSL2 环境 - 构建成功后,运行
./Build/ladybird即可启动浏览器(首次启动会加载本地 demo 页面)
新手建议先阅读 Documentation/ 目录下的架构图与模块说明,再结合源码探索各子系统协作逻辑。
项目信息
编程语言:C++|GitHub Star 数:62,844|开源协议:BSD-2-Clause|GitHub 项目地址
如果你相信“浏览器不该是黑盒”,渴望一个代码透明、设计清晰、真正属于开源社区的网页入口——Ladybird 值得你投入时间去了解、编译、调试,甚至贡献第一行代码。


