22 releases

Uses new Rust 2024

new 0.3.0-alpha.4 May 17, 2026
0.3.0-alpha.2 Apr 23, 2026
0.2.4 Oct 22, 2025
0.1.0-rc.2 Jul 23, 2025

#1113 in GUI

Download history 714/week @ 2026-01-26 914/week @ 2026-02-02 648/week @ 2026-02-09 1341/week @ 2026-02-16 1915/week @ 2026-02-23 1910/week @ 2026-03-02 3294/week @ 2026-03-09 2843/week @ 2026-03-16 2467/week @ 2026-03-23 4292/week @ 2026-03-30 5498/week @ 2026-04-06 4082/week @ 2026-04-13 2527/week @ 2026-04-20 39650/week @ 2026-04-27 1835/week @ 2026-05-04 1013/week @ 2026-05-11

45,219 downloads per month
Used in 17 crates (13 directly)

MIT/Apache

685KB
15K SLoC

The core DOM abstraction in Blitz

This crate implements a flexible headless DOM (BaseDocument), which is designed to emebedded in and "driven" by external code. Most users will want to use a wrapper:

It includes: A DOM tree respresentation, CSS parsing and resolution, layout and event handling. Additional functionality is available in separate crates, including html parsing (blitz-html), networking (blitz-net), rendering (blitz-paint) and windowing (blitz-shell).

Most of the functionality in this crates is provided through the struct.

blitz-dom has a native Rust API that is designed for higher-level abstractions to be built on top (although it can also be used directly).

The goal behind this crate is that any implementor can interact with the DOM and render it out using any renderer they want.

Dependencies

~30–53MB
~865K SLoC