Comment by sev_verso
1 day ago
I've been using the editor since the early days and have always been a fan of its visual look and feel, so I was pretty happy to see its UI library open sourced.
I wish GPUI could become the go-to Rust UI library and not just an editor backend.
For that, a couple of changes would be highly desirable: being able to switch the GPU backend from Metal to wgpu (so it could be mixed with vello, for instance), and the ability to integrate into an existing event loop like egui allows you to. If this were easy to do, I would switch from egui in a heartbeat.
They seem to have stopped developing GPUI (or maybe just the public version)?
One of the staff forked it into a community edition https://github.com/gpui-ce/gpui-ce
Does anyone have more details about the state of it?
> I wish GPUI could become the go-to Rust UI library and not just an editor backend.
In case you find it useful, I recently stumbled upon this project:
https://github.com/longbridge/gpui-component
"UI components for building fantastic desktop applications using GPUI."
I took a look at gpui-component a while ago when assessing GPUI for a project I was working on. IANAL but was dissuaded because it's almost certainly not compliant with the Zed license--gpui-component "borrows" gpui code patterns lifted straight from the main zed repo, which therefore must be AGPL/GPL (unlike the gpui-only which is Apache IIRC). Caveat emptor (caveat user?).
I think it was even featured and praised in a recent zed blog post
There's never going to be one GUI library to rule them all, but I find iced the best Rust library at the moment and likely for the foreseeable future.
I'm beating a dead horse here but the challenge is a11y. Chromium wrappers get a11y for free; bespoke UI frameworks must implement accesskit (or something) which is a lot of work and something that (imo sadly) many small teams decide is not worth the investment.
What's so good about GPUI?
I haven't used it, but it caught my attention when I read the Text Rendering section of this post:
https://zed.dev/blog/videogame#text-rendering
It looks like their approach could nicely solve a problem that's shared by almost every new GUI toolkit I've tried: text looks terrible, or at least out of place when surrounded by applications built with the desktop's native toolkit.
Clean and polished design, concise Tailwind-style API, and last but not least sustained 120 FPS across complex UI.