62382f7e68372f9f583b67d9cffd3a27e0ddfdb2
KanbanBoard lays columns of cards side by side. A card drags to a place in any column: it rides raised at the pointer, a slot opens where it would land, the other cards glide aside on motion::Flip, and the drop asks the owner through on_move(card, column, index); a drop in its own place asks nothing. Option with an arrow moves the focused card, whose focus the board keys by card so it follows it across columns. A press, Enter or Space opens it. Sprint Board is this board. IssueCard shows an issue's status, name, assignee, title, priority, labels and due day. TaskDetailPanel lays a task out in full: its title edits in place, its status, priority, assignee and due day change where they stand, and its notes and steps follow; each edit hands the whole task on, and a blank title is not taken. LabelManager tends a team's labels: a hue picked from a popover, a name edited in place, a delete, and a field that makes a new one; names stay unique in any case, and a refused name says why. The fill rule changes: min_w_full, taken up in T30d, resolves against a block's outer width in taffy 0.9, so a field in a padded card ran past its padding. A component that fills now takes no width on its root, which blocks and flex columns stretch; FormField and the new roots do. The chart's hue names move to theme::HUE_NAMES, which the event editor and the label manager share. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Ely GPUI Component
A component library for GPUI, the Rust UI framework behind Zed. Every component ships in light and dark. The palette is warm and quiet. Color carries meaning, not decoration.
Status: early. TASKS.md tracks every component, chapter by chapter.
Use
[dependencies]
ely-gpui-component = { git = "https://github.com/ZacharyZhang-NY/Ely-GPUI-Components" }
gpui = "0.2.2"
use ely_gpui_component::{Assets, theme::{Mode, Theme}};
use gpui::{App, Application};
fn main() {
Application::new().with_assets(Assets).run(|cx: &mut App| {
ely_gpui_component::init(cx);
Theme::set_mode(Mode::Dark, cx);
});
}
init registers the fonts and the theme. It panics if Assets is not wired into the application.
Gallery
cargo run --example gallery
cargo run --example gallery -- --page buttons
cargo run --example gallery -- --capture shots # macOS: PNG of every page, light and dark
Build notes
- gpui 0.2.2 compiles its Metal shaders at runtime here (
runtime_shaders, on by default), so a full Xcode install is not required. - Tested on macOS only. The capture tool needs macOS.
License
MIT or Apache-2.0, at your option. Lucide icons: ISC. Inter and JetBrains Mono: SIL Open Font License 1.1.
The gallery photos in examples/gallery/assets were generated for this project with gpt-image-2.
Description
No description provided
https://elygpui.com
13 MiB
1 Stars
1 Watchers
0 Forks
Languages
Rust
98.1%
TypeScript
1.2%
CSS
0.3%
Python
0.2%