4 ms·
One thing I've been missing in starting with Rust, is a basic GUI library. Conrod looks promising, but the apparent lack of documentation, coupled with being v
by bacon_waffle 8y ago
One thing I've been missing in starting with Rust, is a basic GUI library. Conrod looks promising, but the apparent lack of documentation, coupled with being very new to the language, makes for a very steep learning curve.
Could anyone suggest where to start developing a cross-platform GUI program in Rust?
- mamcx 8y agoThe problem with GUI is that actually exist very few good ones. And much less languages with a good implementation. I wonder what if in https://www.reddit.com/r/rust/comments/9bapwt/thoughts_on_what_a_good_gui_system_would_need/e51o6mw/ https://www.reddit.com/r/rust/comments/9bapwt/thoughts_on_wh... how about use Rust for most of the UI logic and off-load the final steps for a native layer. I call it a "almost cross-platform" UI.
- mastax 8y agoOn mobile, so no links for you ;) I've seen promising things about Qt/QML. Qml in particular helps avoid having to deal with lots of C++ interop. GTK seems to be rallying around Rust, and it actually looks pretty good nowadays. relm is a really interesting elmish wrapper around GTK. Others have put rust components behind an Electron GUI. So tl;dr it's quickly moving from "terrible and immature" to "terrible, like other languages".
- smittywerben 8y ago> I've seen promising things about Qt/QML. For simple GUIs, the problem I always ran into was 1) spooky licensing vs 2) Tkinter vs 3) can this be forced into a browser? > in particular helps avoid having to deal with lots of C++ interop. I agree there is significant demand here. But I also feel a second (smaller) group wants access to GPUs for high-performance visualizations and/or games, since that's usually built in C or C++. > "terrible, like other languages" This made me laugh. I want to move out of the browser and back to the metal.
- bacon_waffle 8y agoThanks for the pointers! I have used Qt a fair bit for hobby projects, and quite like it in the context of cross-platform C++. But I haven't yet wrapped my head around what a Rust interface to Qt would look like, and results searching https://crates.io https://crates.io for Qt bindings had kinda scared me off. https://github.com/KDE/rust-qt-binding-generator https://github.com/KDE/rust-qt-binding-generator looks quite interesting though! > So tl;dr it's quickly moving from "terrible and immature" to "terrible, like other languages". Ha! Well, at least we don't have so long to wait, I guess.
- oever 8y agoThere's a new blog on Rust Qt Binding Generator with the most feature-rich application in it yet: https://www.vandenoever.info/blog/2018/09/16/browsing_your_mail_with_rust_and_qt.html https://www.vandenoever.info/blog/2018/09/16/browsing_your_m...
- flukus 8y agoHere is a promising cross platform library: https://github.com/andlabs/libui https://github.com/andlabs/libui They made some good decisions like using real native controls and writing it in c to allow bindings to many languages, including 3 for rust. The biggest catch for me is the lack of table controls: https://github.com/andlabs/libui/issues/310 https://github.com/andlabs/libui/issues/310