Zyphy is (or will be) a fast web browser engine written in Swift.
Important
This package is under development.
- 🚧
Tokenizer- An HTML tokenizer that takes an HTML string and produces HTML tokens. (specs) - 🚧
TreeBuilder- An HTML tree constructor that constructs a DOM tree from HTML tokens. (specs) - 🥚
Layout- A layout engine that translates a DOM tree into a layout tree. - 🥚
Paint- A rendering abstraction layer that translates a layout tree into a platform-independent display list of drawing commands. - 🥚
SVGBackend- An SVG backend of the renderer. - 🥚
SVGExample- An example application usingSVGBackend.
Icons:
- ✅ Ready to Use
- 🚧 Work in Progress
- 🥚 To Do
- Swiftly
- Swift toolchain: Just run
swiftly installafter installing Swiftly- We can't use a stable toolchain yet because Zyphy is using experimental code item macros.
swift buildgit submodule update --init --recursive
swift test --disable-xctestswift package --package-path Benchmarks benchmarkFor more details, please see https://github.com/ordo-one/package-benchmark.
The benchmark data are from html5ever, which is dual-licensed under the MIT license and the Apache 2.0 license.