gpuikit
🚧 Pre-1.0: expect breaking changes in every release. Pin your version. 🚧
A UI toolkit for gpui applications. Targeting a conceptual union of SwiftUI and web-style component libraries to make building modern gpui applications seamless.

Getting started
gpuikit builds against gpui-unofficial, a crates.io distribution of gpui — your app should depend on the same one:
[]
= { = "gpui-unofficial", = "1.14" }
= "0.8"
use Application;
Browse every component in the showcase:
More examples, and how to run them, in examples/. API docs are at docs.rs/gpuikit.
Feature flags
All off by default:
| Flag | What it adds |
|---|---|
editor |
The Editor component, and syntect-based syntax highlighting for markdown code fences |
stitch |
Flicker-free streaming markdown: unterminated syntax (**bold) is closed before parsing. Requires Rust 1.95 |
runtime_shaders |
Compiles Metal shaders at runtime, so macOS builds don't need the Xcode Metal toolchain |
schema |
Adds the schemars dependency |
Web
gpuikit runs in the browser on gpui's web platform (WebGPU via wgpu): live demo, built from gpuikit-demo, which also documents the wasm build setup.
Minimum Rust version
1.85, or 1.95 with the stitch feature. Some dependencies require newer
stables, so prefer a recent toolchain.
License
Licensed under either of the Apache License 2.0 or the MIT license, at your option.