[Photo by Harpal Singh on Unsplash, modified]
I am writing a post on the subject of Rust GUI, and sadly I am realizing that no much progress has been done in this area lately.
The site AreWeGUIYet seems almost abandoned to its own fate...
Thus I am polling you guys to know which Rust crate would you recommend to use in 2021 in order to give a Rust program a nice GUI?
Top comments (7)
It's not abandoned, I'm working on a major revision in my spare time, during which I realized too late how much work is needed before it could be of use to would-be GUI programmers and easier to maintain for us.
Awesome! Feel free to reach out if you need some help. I actually wanted to do a copycat of my own to keep things alive, but if AWGY keeps updated it would be of much more use to the whole community. The sites are we...yet are kinda institution now in the Rust community
Same, but before I did that, I made a patch, which later turned to a dedicated channel on rather bare development discord, once I'm happy with MVP of the new version I'll publish it, then feel invited to contribute.
As far as I've seen, only
gtk-rs
(for GTK 3/4) seems to be the most mature among these which I've seen to be used frequently, but that still calls C APIs using some custom introspection library or something, and still doesn't use pure "rusty" code for writing programs, thus also feels less rust-native when you write programs with it.EDIT:
vgtk
sems to be a pretty cool project which does use a lot more declarative design compared to gtk-rs, I think I might check that out for myself.I've had this problem myself with Rust several times. It all stems from the issue that you need to create safe Rust bindings for each library you want to use or else there's no point in using Rust.
This is why I've been recently exploring the Zig programming language. You can simply include header files in it and use them directly. It's not 1.0 yet but it looks extremely promising and is stable enough for side projects. Some people have already created OS kernels and other graphics/GUI stuff with it.
I suggest you give it a shot.
Thank you Syed. I will try Zig (I try a lot of different languages). But the point for me is to try and make GUI work in Rust... Maybe the answer is that there's no answer, and then we know there is something very important missing in Rust, who knows?
Tauri.