Show HN: Vaev——一个从零开始构建的浏览器引擎(它可以渲染google.com)
Show HN: Vaev – A browser engine built from scratch (It renders google.com)

原始链接: https://github.com/skift-org/vaev

实验性网页浏览器引擎Veav目前支持一部分网页标准,包括:大多数显示类型(表格除外)、标准CSS级联行为、使用@page规则进行分页、打印到PDF输出、所有CSS单位(包括百分比、var()和calc())、HTML和XHTML文档加载,以及非常基础的网络功能(仅支持http://和file://)。 有关兼容性和功能跟踪的详细信息,请参见我们的WPT状态页面。 您可以运行以下命令尝试Veav: ```bash pacman -S base-devel git ninja sdl2 nasm gcc-multilib liburing clang libseccomp # 我们需要llvm 20,而arch目前还没有 yay -S clang-prefixed-release git clone https://github.com/skift-org/vaev.git cd vaev pip install git+https://github.com/cute-engineering/cutekit python -m ck run --release vaev-browser -- file.html ``` 架构图位于该文件旁边,格式为tldraw。

Vaev,一个从零开始构建的极简主义网页浏览器引擎,主要渲染Google.com,已在Hacker News上展示。它作为一个实验性学习项目开发,支持HTML/XHTML、CSS(包括calc()、var())、分页和打印成PDF。虽然目前只支持基本的网络协议(http://、file://)并且缺乏网格布局支持,但它正在快速发展。 评论者讨论了将网页标准标准化成“smolweb”子集的想法,用于替代浏览器和网站,可能基于电子邮件HTML。挑战包括不断发展的网页规范和潜在的偏离,一些人建议使用旧版本,例如HTML 4.01/CSS 2.1,或关注可访问性。另一些人则更倾向于较新的标准,例如CSS Grid。 由于安全问题,C++的选择受到了质疑,有人建议使用更安全的语言,如Rust(尽管对于浏览器开发来说具有挑战性)或Swift。也有人提到在Rust项目中寻找贡献者存在困难。该项目用于替代wkhtmltopdf进行PDF渲染的用例也被提及,一些人推荐使用Typst或WeasyPrint等替代方案。最终,Vaev代表了一项重大的技术成就,展示了其创建者的奉献精神。

原文

An experimental web browser engine

Veav currently supports a subset of web standards, including:

  • Most display types (excluding grid)
  • Standard CSS cascade behavior
  • Pagination using @page rules
  • Print-to-PDF output
  • All CSS units, including percentages, var(), and calc()
  • Loading of HTML and XHTML documents
  • Very basic networking, only http:// and file:// is supported

For detailed compatibility and feature tracking, see our WPT status page

You can try out Veav by running the following command:

pacman -S base-devel git ninja sdl2 nasm gcc-multilib liburing clang libseccomp

# We need llvm 20 and arch doesn't have it yet
yay -S clang-prefixed-release

git clone https://github.com/skift-org/vaev.git

cd vaev

pip install git+https://github.com/cute-engineering/cutekit

python -m ck run --release vaev-browser -- file.html

An architecture diagram is available next to this file. It's in the tldraw format.

联系我们 contact @ memedata.com