vello VS blitz

Compare vello vs blitz and see what are their differences.

vello

An experimental GPU compute-centric 2D renderer. (by linebender)

blitz

High performance HTML and CSS renderer powered by WGPU (by DioxusLabs)
Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
vello blitz
31 16
1,936 405
8.2% 9.6%
9.4 9.0
7 days ago about 1 month ago
Rust Rust
Apache License 2.0 Apache License 2.0
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

vello

Posts with mentions or reviews of vello. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-03-20.
  • Rive Renderer – now open source and available on all platforms
    7 projects | news.ycombinator.com | 20 Mar 2024
    I'm looking forward to doing careful benchmarking, as this renderer absolutely looks like it will be competitive. It turns out that is really hard to do, if you want meaningful results.

    My initial take is that performance will be pretty dependent on hardware, in particular support for pixel local storage[1]. From what I've seen so far, Apple Silicon is the sweet spot, as there is hardware support for binning and sorting to tiles, and then asking for fragment shader execution to be serialized within a tile works well. On other hardware, I expect the cost of serializing those invocations to be much higher.

    One reason we haven't done deep benchmarking on the Vello side is that our performance story is far from done. We know one current issue is the use of device atomics for aggregating bounding boxes. We have a prototype implementation [2] that uses monoids for segmented reduction. Additionally, we plan to do f16 math (which should be a major win especially on mobile), as well as using subgroups for various prefix sum steps (subgroups are in the process of landing in WebGPU[3]).

    Overall, I'm thrilled to see this released as open source, and that there's so much activity in fast GPU vector graphics rendering. I'd love to see a future in which CPU path rendering is seen as being behind the times, and this moves us closer to that future.

    [1]: https://dawn.googlesource.com/dawn/+/refs/heads/main/docs/da...

    [2]: https://github.com/linebender/vello/issues/259

    [3]: https://github.com/gpuweb/gpuweb/issues/4306

  • WebKit Switching to Skia for 2D Graphics Rendering
    6 projects | news.ycombinator.com | 20 Feb 2024
  • Looking for this. html + css rendering through wgpu.
    14 projects | /r/rust | 3 Jul 2023
    Dioxus is working on this with blitz. It's leveraging wgpu through the linebender group's Vello renderer. Still in early stages.
  • A note on Metal shader converter
    2 projects | news.ycombinator.com | 12 Jun 2023
    If you're doing advanced compute work (including lock-free data structures), then it's best effort.

    https://github.com/linebender/vello/issues/42 is an issue from when Vello (then piet-gpu) had a single-pass prefix sum algorithm. Looking back, I'm fairly confident that it's a shader translation issue and that it wouldn't work with MoltenVK either, but we stopped investigating when we moved to a more robustly portable approach.

  • Vello: An experimental WebGPU-based compute-centric 2D renderer in Rust
    1 project | news.ycombinator.com | 23 Apr 2023
  • XUL Layout has been removed from Firefox
    18 projects | news.ycombinator.com | 1 Apr 2023
    There are a number of up-and-coming Rust-based frameworks in this niche:

    - https://github.com/iced-rs/iced (probably the most usable today)

    - https://github.com/vizia/vizia

    - https://github.com/marc2332/freya

    - https://github.com/linebender/xilem (currently very incomplete but exciting because it's from a team with a strong track record)

    What is also exciting to me is that the Rust GUI ecosystem is in many cases building itself up with modular libraries. So while we have umpteen competing frameworks they are to a large degree all building and collaborating on the same foundations. For example, we have:

    - https://github.com/rust-windowing/winit (cross-platform window creation)

    - https://github.com/gfx-rs/wgpu (abstraction on top of vulkan/metal/dx12)

    - https://github.com/linebender/vello (a canvas like imperative drawing API on top of wgpu)

    - https://github.com/DioxusLabs/taffy (UI layout algorithms)

    - https://github.com/pop-os/cosmic-text (text rendering and editing)

    - https://github.com/AccessKit/accesskit (cross-platform accessibility APIs)

    In many cases there a see https://blessed.rs/crates#section-graphics-subsection-gui for a more complete list of frameworks and foundational libraries)

  • Drawing and Annotation in Rust
    1 project | /r/rust | 8 Mar 2023
    blessed.rs lists these three crates for 2D drawing: - https://lib.rs/crates/femtovg - https://lib.rs/crates/skia-safe - https://github.com/linebender/vello
  • Recommended UI framework to draw many 2D lines?
    5 projects | /r/rust | 6 Mar 2023
    Vello (https://github.com/linebender/vello) which uses wgpu to render Edit: just saw you require images. Vello doesn't support those yet
  • Announcing piet-glow, a GL-based implementation of Piet for 2D rendering
    3 projects | /r/rust | 6 Mar 2023
    How does this relate to Vello? Both target raw-window-handle for winit compatibility. Vello uses WGPU vs piet-glow using GL.
  • Is WGPU actually a good idea yet?
    1 project | /r/rust_gamedev | 1 Mar 2023
    Finally, maybe vello could help you with ideas. It's not production ready yet, but they have some interesting ideas for 2D rendering using wgpu.

blitz

Posts with mentions or reviews of blitz. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-02-05.
  • Deno in 2023
    8 projects | news.ycombinator.com | 5 Feb 2024
    Have you talked to the Dioxus people recently?

    They're working on a project called Dioxus Blitz; from what I'm told, they're trying to implement a minimal browser target, that provides some basic DOM-like features and renders with wgpu.

    It's not exactly what you're hoping for, but you might find common ground.

    https://github.com/DioxusLabs/blitz

    (Also, the Linebender project is working on Masonry, with FFI as a medium-term goal.)

  • If the native speed DOM/Web API for Rust becomes a reality, would you be willing to build your web apps with Rust and HTML/CSS?
    3 projects | /r/rust | 5 Dec 2023
    Your proposal sounds very similar to what the Dioxus folks are doing on Blitz, which is using HTML/CSS as the languages but doing native rendering. WebF seems much further along, and I know they've been exploring other rendering engines, so it may be an interesting conversation for you to have with them.
  • Looking for this. html + css rendering through wgpu.
    14 projects | /r/rust | 3 Jul 2023
    Others have already mentioned inlyne and blitz, however given that you're interested in combining web UI with game/wgpu rendering you may be more interested in bevy_ui (and the higher level APIs like bevy_ui_dsl and belly that sit on top of this). Bevy UI is working on a HTML model and is specifically designed to integrate with Bevy's main game renderer and other infrastructure. It's worth noting that a 0.11 release of Bevy of due in next few days, and that UI is going to be a strong focus of the 0.12 release cycle: which should lead to significant development of bevy_ui, and either a doubling down on the "HTML-like UI" approach or a pivot to a new approach.
  • Awesome presentation of Dioxus - cross-platform GUI framework at RustNL
    3 projects | /r/rust | 14 Jun 2023
    Here is an example: https://github.com/DioxusLabs/blitz/blob/master/examples/buttons.rs
  • Digital Audio Workstation Front End Development Struggles
    16 projects | news.ycombinator.com | 15 May 2023
    > But no one is saying, "Hey I have a CSS 2.1 compliant rasterizer and compositor that you can use in your C++ or Rust environment!" are they?

    There’s actually quite a lot of interesting work going on in that general space, has been in various forms for some years. A couple that immediately spring to mind:

    • Azul <https://azul.rs/> builds on WebRender, as used in Firefox. I haven’t looked at it for a few years, but it looks to have grown quite interesting now.

    • Blitz <https://github.com/DioxusLabs/blitz> is based on from-scratch implementations of CSS layout and rendering, and wgpu rendering. It’s not usable yet, but is a very interesting concept. If one happens to be familiar with React Native: it’s kinda like that, or React Native Web.

  • [Media] Version 0.3 of Inlyne - An interactive markdown renderer written entirely in Rust
    7 projects | /r/rust | 7 May 2023
    You may also be interested in https://github.com/DioxusLabs/blitz which aims to be a full HTML+CSS renderer on top of wgpu (but is currently not nearly as complete as inlyne).
  • What is the most fully-featured rust frontend framework?
    5 projects | /r/rust | 24 Apr 2023
    If you are focused on performance we are working on a native renderer for Dioxus called Blitz. It is very incomplete right now, but in the future it will be much more performant than the current webview based approach.
  • GitHub Accelerator: our first cohort and what's next
    28 projects | news.ycombinator.com | 13 Apr 2023
  • Taffy 0.3: UI layout in Rust, now with css-grid!
    10 projects | /r/rust | 12 Feb 2023
    There hasn't been too much progress on Blitz in the last few weeks (it will come), but there is now a new project Freya which is using a Dioxus frontend and rendering with Skia. That's currently using it's own layout system instead of Taffy though.
  • Tauri vs Iced vs egui: Rust GUI framework performance comparison (including startup time, input lag, resize tests)
    7 projects | /r/rust | 3 Feb 2023
    The main desktop renderer for Dioxus uses wry (the webview tauri uses internally), so the startup time will likely be similar. We are working on a native renderer called blitz which should improve this, but development is still early

What are some alternatives?

When comparing vello and blitz you can also consider the following projects:

nanovg - Antialiased 2D vector drawing library on top of OpenGL for UI and visualizations.

vizia - A declarative GUI library written in Rust

msdfgen - Multi-channel signed distance field generator

dioxus - Fullstack GUI library for web, desktop, mobile, and more.

Vrmac - Vrmac Graphics, a cross-platform graphics library for .NET. Supports 3D, 2D, and accelerated video playback. Works on Windows 10 and Raspberry Pi4.

freya - Native GUI library for 🦀 Rust powered by 🧬 Dioxus and 🎨 Skia.

troika - A JavaScript framework for interactive 3D and 2D visualizations

taffy - A high performance rust-powered UI layout library

tinyraytracer - A brief computer graphics / rendering course

ToobAmp - A set of high-quality guitar effect plugins for Raspberry Pi with specific support for PiPedal.

gpuweb - Where the GPU for the Web work happens!

dioxus-tailwindcss - Template for the Rust Web/Desktop framework Dioxus + TailwindCSS