Skip to content

Commit

Permalink
Update architecture section of the README
Browse files Browse the repository at this point in the history
  • Loading branch information
nicoburns committed Oct 15, 2024
1 parent 7a25440 commit a84179c
Showing 1 changed file with 17 additions and 3 deletions.
20 changes: 17 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -60,10 +60,24 @@ We don't yet have Blitz bindings for other languages (JavaScript, Python, etc) b

## Architecture

Blitz is split into several pieces:
Blitz consists of a core DOM abstraction (`blitz-dom`), and several modular pieces which provide functionality like networking, rendering, windows, and state management. These pieces can be combined together to make a cohesive web engine.

### Crates

**Core:**

- `blitz-traits`: Minimal crate containing types and traits to allow the other crates to interoperate without depending on each other
- `blitz-dom`: The core DOM abstraction that includes style resolution and layout but not drawing/painting. Combines the best of Stylo and Taffy that allows you to build extendable dom-like structures.
- `blitz`: Adds a Vello/WGPU based renderer to `blitz-dom`
- `dioxus-native`: A dioxus integration layer for blitz. Render your Dioxus app using Blitz. Currently `dioxus-native` also contains the HTML renderer but this will likely be split out into it's own package in future.

**Modules**:
- `blitz-renderer-vello`: Adds a Vello/WGPU based renderer to `blitz-dom`
- `blitz-net`: Networking that can fetch resources over http, from the file-system or from encoded data URIs.
- `dioxus-native`: This crate should contain just a dioxus integration layer for Blitz. However, it currently contains all of the following functionality:
- `DioxusDocument` - A dioxus integration layer for Blitz
- `HtmlDocument` - An HTML rendering layer for Blitz
- `Window` - A winit-based "shell" for running Blitz applications in a window.

These different parts will be split into separate crates in future.

## Status

Expand Down

0 comments on commit a84179c

Please sign in to comment.