Our great sponsors
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
I personally settled on Flutter. It's a modern declarative UI framework by Google that was designed for mobile apps, but it can also do desktop and web these days. It can be used as a library using its embedder API that can render to Vulkan, Metal and OpenGL. So, it can be embedded in a wgpu context (here's my prototype for that based on wgpu/Vulkan and winit). Flutter uses Dart for UI programming, which is fine for me, since a lot of iteration is necessary for that, and Flutter allows Dart code to be hot reloaded during development (so you just have to save your file and the running application is updated automatically, keeping all of its state intact). Rust wouldn't be able to do that at the moment. Web support is trivial, because Flutter Web allows integrating HTML elements between its UI layers. I can simply insert a canvas there and link that to wgpu.
There's the flutter_rust_bridge project that allows interop between Rust and Dart, allowing the Flutter part to communicate directly with the 3D rendering part written in Rust. I've spent the last two weeks getting the bridge to the point where I can use it. It's still a bit rough, especially around async, but it works so far on both web and native.
You also have Godot. It is a game engine and while you will need some setup for using rust it will make developing your application way easier:
There is Iced which is used by system76 in Pop!_OS, Druid [DISCONTINUED], GTK-rs, Relm, Azul and Tauri. Personally I would use Tauri for its speed using the OS's native web render, documentation of use with things such as Sveltekit and the ability to make UI's using JS, CSS and HTML. Tauri similarly to Electron whilst being far faster. But its up to personal preference really. There aren't any solid "go to" options at the moment.
There is Iced which is used by system76 in Pop!_OS, Druid [DISCONTINUED], GTK-rs, Relm, Azul and Tauri. Personally I would use Tauri for its speed using the OS's native web render, documentation of use with things such as Sveltekit and the ability to make UI's using JS, CSS and HTML. Tauri similarly to Electron whilst being far faster. But its up to personal preference really. There aren't any solid "go to" options at the moment.
There is Iced which is used by system76 in Pop!_OS, Druid [DISCONTINUED], GTK-rs, Relm, Azul and Tauri. Personally I would use Tauri for its speed using the OS's native web render, documentation of use with things such as Sveltekit and the ability to make UI's using JS, CSS and HTML. Tauri similarly to Electron whilst being far faster. But its up to personal preference really. There aren't any solid "go to" options at the moment.
There is Iced which is used by system76 in Pop!_OS, Druid [DISCONTINUED], GTK-rs, Relm, Azul and Tauri. Personally I would use Tauri for its speed using the OS's native web render, documentation of use with things such as Sveltekit and the ability to make UI's using JS, CSS and HTML. Tauri similarly to Electron whilst being far faster. But its up to personal preference really. There aren't any solid "go to" options at the moment.
There is Iced which is used by system76 in Pop!_OS, Druid [DISCONTINUED], GTK-rs, Relm, Azul and Tauri. Personally I would use Tauri for its speed using the OS's native web render, documentation of use with things such as Sveltekit and the ability to make UI's using JS, CSS and HTML. Tauri similarly to Electron whilst being far faster. But its up to personal preference really. There aren't any solid "go to" options at the moment.
egui
Dioxus
Freya
Vizia
KAS GUI
Concoct
rui