Live data from Hacker News

The state of building user interfaces in Rust

areweguiyet.com

41–50 of 156 posts

Re: The state of building user interfaces in Rust

#41

Is it common for the toolkits written from scratch in Rust to have bindings for other languages? I still think the ideal solution for Desktop GUIs would be the Qt company developing first class Qt bindings for Node.js (or some other runtime), and allow people to build UIs using web tech with Qt components.

Qt already has really good binding, see Pyside6 for instance. GTK similarly through introspection.

Not sure why you want to build desktop GUIs using web tech though.

Re: The state of building user interfaces in Rust

#42

Is it common for the toolkits written from scratch in Rust to have bindings for other languages? I still think the ideal solution for Desktop GUIs would be the Qt company developing first class Qt bindings for Node.js (or some other runtime), and allow people to build UIs using web tech with Qt components.

Slint UI does have bindings in other languages, but tutorials and docs are still lacking. Qt Bridges is a new option on the way for leveraging Qt with Rust and other language bindings.

Link: https://www.qt.io/development/qt-framework/qt-bridges

Re: The state of building user interfaces in Rust

#43

I’ve been really impressed with GPUI, particularly with Longbridge’s open source component library which provides a bunch of shadcdn-alike widgets that are really well implemented and come with a bunch of tailwind-like helper functions that make layout easy. The downside is that the dependency stack you need to do gui programming with rust is massive and the compile times are brutal. You can’t beat the application pe…

GPUI is developed alongside Zed and thus features that aren't useful for Zed are sometimes left behind.

I think there was a community fork recently that tried to tend to these concerns.

It's not a bad thing per se, but its worth mentioning.

Re: The state of building user interfaces in Rust

#45
post #31

Throwing in my vote... I've been doing everything with wasm-bindgen/web-sys, i.e. just doing my UIs in html, and for 99% that's what I'd want anyways. Web UIs are portable, remotely accessible, and don't require installation on each client. For the small percent that's left where speed is critical, I've just been using wgpu and wgsl-bindgen directly. I can't think of what I'd want a native UI solution for. And then h…

saving this comment, this echos my own thinking, html is not great but its better than dealing with all those things you listed.

Re: The state of building user interfaces in Rust

#48
post #30
post #3

Earlier quoted context omitted.

The answer to the question posed in the site's domain name is "no", unfortunately. It looks like it just grabbed the intro to each project's self-description, but blurbs like "Zero-cost ultra-high-performance declarative DOM library using FRP signals" would be worth very little even with screenshots.

"no" is reductive to the point of being misleading. Cosmic DE is built using iced which is a rust gui library. As far as native, single-platform guis go, I'd say rust is plenty mature. There's also Bevy, a rust game engine, which, if I'm not mistaken is built on egui(?), and I think supports multiple compile targets. Between a desktop environment and a game engine, I'd say rust is in a pretty decent place when it com…

> There's also Bevy, a rust game engine, which, if I'm not mistaken is built on egui(?)

Not entirely correct, they have bevy_ui as the in-house example but many people use the third party bevy_egui crate

Re: The state of building user interfaces in Rust

#49

Earlier quoted context omitted.

Yes, I think it's trying to be comprehensive (as far as possible) rather than detailed. Given the amount of frameworks listed, including representative screenshots or comparisons for each would be a substantial effort. The best primer on the current(ish) state of GUI programming in Rust, IMO, is this article from 2025 which is linked on that page: https://www.boringcactus.com/2025/04/13/2025-survey-of-rust-...

Opening that site prompts my browser to download a `Human_fart.wav` file.

Seems like a referrer of HN triggers that. Copy & paste the URL and it works fine. Idiotic.

Re: The state of building user interfaces in Rust

#50

my 2 cents: egui is the clear winner for making desktop applications. I've built a complex application recently (think of it like an AI powered image editor, doing plenty of editor logic and communicating with several python backends for the AI part) and it's been smooth sailing. It would be nice to have a family of components that look native on every platform but nowadays the desktop experience is anyway wildly inc…

> egui is the clear winner for making desktop applications

I disagree. It's the easiest to get started with, but it looks pretty terrible (poor font rendering especially), and immediate mode has serious downsides.

My current favourite is https://github.com/longbridge/gpui-component

Post reply on HN