← ClaudeAtlas

gpui-conventionslisted

Use when writing gpui UI code in this workspace. Verified workspace patterns and gotchas for the GPUI dependencies selected by Cargo, built through hands-on exploration — NOT a generic gpui reference. Covers views, input, lists, focus, window management, testing, and source-checking version-sensitive behavior.
qol-tools/qol-skills · ★ 0 · Web & Frontend · score 62
Install: claude install-skill qol-tools/qol-skills
# GPUI Knowledge Base Bespoke documentation for gpui, built through hands-on exploration. ## Resources - [gpui.rs](https://www.gpui.rs/) - Official site - [docs.rs/gpui](https://docs.rs/gpui) - API docs - [Zed gpui crate](https://github.com/zed-industries/zed/tree/main/crates/gpui) - Source of truth - [gpui-component](https://github.com/longbridge/gpui-component) - component library - [WindowOptions docs](https://docs.rs/gpui/latest/gpui/struct.WindowOptions.html) ## Project Setup Copy the GPUI dependency declarations from the nearest maintained workspace consumer, preferably `libs/qol-gpui/Cargo.toml`. `Cargo.toml` and `Cargo.lock` own the selected versions; do not pin a second copy in this skill. Requires: Rust stable, macOS or Linux. ### Linux Dependencies (Ubuntu/Debian) ```bash sudo apt install gcc g++ libasound2-dev libfontconfig-dev libwayland-dev \ libx11-xcb-dev libxkbcommon-x11-dev libssl-dev libzstd-dev libvulkan1 \ libgit2-dev make cmake clang mold libstdc++-14-dev ``` ## Minimal Window ```rust use gpui::*; actions!(launcher, [Quit]); struct MyView; impl Render for MyView { fn render(&mut self, _window: &mut Window, _cx: &mut Context<Self>) -> impl IntoElement { div() .size_full() .bg(rgb(0x1e1e2e)) .child("Hello gpui") } } fn main() { Application::new().run(|cx: &mut App| { cx.bind_keys([KeyBinding::new("escape", Quit, None)]); cx.on_action(|_: &Quit, cx: &mut App| cx.qu