📌 项目地址:github.com/ZacharyZhang-NY/Ely-GPUI-Components | 星数:407+ | 语言:Rust | 框架:GPUI(Zed 同源)| 在线预览:elygpui.com
Zed 编辑器带火了 GPUI 框架,但用它写应用的人马上发现:组件要自己造。Ely GPUI Components 来补位:每个组件明暗双主题、暖色安静的调色板、设计理念是「颜色承载语义,不做装饰」;全部组件编译成 WASM 放在官网在线试玩——Rust UI 库做到「先玩后用」的极少。同框架的数据库客户端见 Tusk教程,桌面设计工具见 Compositor教程。
| 理念 | 说明 |
|---|---|
| 明暗双主题 | 每个组件出厂即带两套主题,无明青暗黄的半成品 |
| 暖色安静 | 调色板温暖克制,适合长时间使用的工具类应用 |
| 语义化用色 | 颜色表达状态与含义,不当壁纸刷 |
| WASM 在线预览 | 全部组件在 elygpui.com 实时可玩,选型零成本 |
| 进度透明 | TASKS.md 逐章追踪每个组件的完成状态 |
# Cargo.toml(锁定 Zed 仓库 rev)
[dependencies]
ely-gpui-component = { git = "https://github.com/ZacharyZhang-NY/Ely-GPUI-Components" }
gpui = { git = "https://github.com/zed-industries/zed", rev = "1a28cff4b409169bac058bca40dfbfeb7621d19b" }
gpui_platform = { git = "https://github.com/zed-industries/zed", rev = "1a28cff4b409169bac058bca40dfbfeb7621d19b", features = ["font-kit"] }
# 代码初始化
use ely_gpui_component::{Assets, theme::{Mode, Theme}};
ely_gpui_component::init(cx);
Theme::set_mode(Mode::Dark, cx); // 明暗一钥切换
GPUI 的组件库(ZacharyZhang-NY/Ely-GPUI-Components,407 星,Rust)——GPUI 是 Zed 编辑器背后的 Rust UI 框架。每个组件自带明暗双主题,调色板温暖安静,理念是『颜色承载语义而非装饰』。全部组件编译成 WebAssembly 在 elygpui.com 在线可玩。
Cargo 依赖直接用 git 源:ely-gpui-component 指向仓库,gpui 与 gpui_platform 需锁定 Zed 仓库的特定 rev(README 给出确切版本号,gpui_platform 记得开 font-kit feature)。代码里 ely_gpui_component::init(cx) 初始化后 Theme::set_mode 切明暗。
官方明确标注 early(早期):组件进度在 TASKS.md 里逐章追踪,想贡献看 CONTRIBUTING.md。适合愿意跟 Zed 生态一起成长的 Rust 桌面开发者;要生产稳定可先锁定 rev 使用已完成的组件章节。