I was really hoping we'd have bindings to Qt by now, but looking at the GUI category on crates.io I didn't find any. What do people use to make cross platform GUIs in Rust?

The last time I checked there was this: https://github.com/White-Oak/qml-rust

But it looks stalled. Not sure if anyone is working on such bindings today.

UPDATE: I just found this which looks active: https://github.com/rust-qt/cpp_to_rust

There are some glaring issues w/ the Rust Qt crates, namely subclassing things like QWidget. But it is high priority [0]. This is essential for using Qt as many things are not "signals" but instead overridable protected methods. I started a embedded browser PoC [1] until I hit these limitations which forced me to use C++ [2].

And many other static langs (i.e. not-python) have issues with their Qt bindings (e.g. Go [3] which can't compile via MSVC which some things like the QtWebEngine stuff need). Sadly, for advanced UI (e.g. complex tree views, docking, etc) that is cross platform and looks native, Qt is all there is, and it's reliance on C++ makes it a bit tough to use across languages. A maintained C iface for Qt is really needed.

0 - https://github.com/rust-qt/cpp_to_rust/issues/53

1 - https://github.com/cretz/rust-qt_cef_poc

2 - https://github.com/cretz/qt_cef_poc

3 - https://github.com/therecipe/qt/