freya
relm
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
freya
-
Ebou Released 🚀: A (mostly full featured) cross platform desktop Mastodon client written in Rust + Dioxus
Awesome, when it's properly release I'll give it a try with freya (https://github.com/marc2332/freya, a skia-based renderer for Dioxus I am making)
- GUI development with Rust and GTK 4
-
What is the most fully-featured rust frontend framework?
Or if you don't care about web compatibility, you can use Dioxus' state management with Freya which is more complete and renderers natively with Skia
-
XUL Layout has been removed from Firefox
There are a number of up-and-coming Rust-based frameworks in this niche:
- https://github.com/iced-rs/iced (probably the most usable today)
- https://github.com/vizia/vizia
- https://github.com/marc2332/freya
- https://github.com/linebender/xilem (currently very incomplete but exciting because it's from a team with a strong track record)
What is also exciting to me is that the Rust GUI ecosystem is in many cases building itself up with modular libraries. So while we have umpteen competing frameworks they are to a large degree all building and collaborating on the same foundations. For example, we have:
- https://github.com/rust-windowing/winit (cross-platform window creation)
- https://github.com/gfx-rs/wgpu (abstraction on top of vulkan/metal/dx12)
- https://github.com/linebender/vello (a canvas like imperative drawing API on top of wgpu)
- https://github.com/DioxusLabs/taffy (UI layout algorithms)
- https://github.com/pop-os/cosmic-text (text rendering and editing)
- https://github.com/AccessKit/accesskit (cross-platform accessibility APIs)
In many cases there a see https://blessed.rs/crates#section-graphics-subsection-gui for a more complete list of frameworks and foundational libraries)
-
Declarative UI Programming in Rust for Native Applications
https://github.com/DioxusLabs/dioxus (which has native rendering in the form of https://github.com/marc2332/freya)
-
Taffy 0.3: UI layout in Rust, now with css-grid!
There hasn't been too much progress on Blitz in the last few weeks (it will come), but there is now a new project Freya which is using a Dioxus frontend and rendering with Skia. That's currently using it's own layout system instead of Taffy though.
-
Rust GUI framework
Freya
-
What's everyone working on this week (6/2023)?
A native GUI library https://github.com/marc2332/freya
-
Looking for feedback on the next version of viewbuilder! The UI framework with a new a compose-like API
Since you’re working with Taffy and Skia, have you checked out Freya? There’s more room for innovation in the more tightly scoped niches of this kind.
-
Making Dioxus (almost) as fast as SolidJS
Marc has also made some really good progress on a skia renderer but I don't think it is ready for production yet.
relm
- [Rust] Pouvez-vous faire une bonne interface graphique dans Rust?
-
Rust GUI framework
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.
- Relm – idiomatic, GTK-based GUI library for Rust
-
What are the pros/cons of the best GUI options for a cross platform app in Rust?
Currently, I have narrowed potential libraries to: 1. Flutter 2. FLTK 3. Relm (GTK) 4. iced 5. Slint 6. Imgui, Imgui-rs 7. and gtk-rs
-
Hey Rustaceans! Got a question? Ask here (4/2023)!
Relm (GTK)
-
is makeing Vulkan guis worth it?
Relm, Slint (formerly SixtyFPS), Druid and Iced are all very promising idiomatic GUI toolkits with a great deal of community activity around them, and all of those perform substantially better in the accessibility department than ImGui and egui, to my knowledge. areweguiyet.com can give you some more pointers as well.
-
The state of Rust GUI libraries
To use relm, you need to add the gtk and relm libraries to your project's dependencies in your Cargo.toml file. You’ll also need to have the gtk library installed.
-
A declarative desktop UI framework for Rust built on GTK and GTK-rs
No , not really a lot of the time people are trying to tackle problems that have taken years to solve in other languages which isn’t easy and is why you see stuff abandoned. This project is also pretty similar to [relm](https://github.com/antoyo/relm) which is an active project.
-
egui or iced or druid?
The [older gtk3 version of relm](https://github.com/antoyo/relm) has 2.1k stars. Relm4 is uses gtk4 which is newer.
-
Any good resources for using Rust with GTK4 and Libadwaita?
Relm (supposedly more idiomatic)
What are some alternatives?
iced_taffy - Library for using Taffy layout with the Iced GUI framework. It currently provides a single Grid component for 2D grid layout.
gtk - DEPRECATED, use https://github.com/gtk-rs/gtk3-rs repository instead!
xilem - An experimental Rust native UI framework
Azul - Desktop GUI Framework
steel - An embedded scheme interpreter in Rust
iced - A cross-platform GUI library for Rust, inspired by Elm
rustapi - 🚀 RESTful Rust API Template / Boilerplate
libui-rs - Rust bindings to the minimalist, native, cross-platform UI toolkit `libui`
cosmic-text - Pure Rust multi-line text handling
wxRust - A Rust binding of the wxWidgets cross platform toolkit.
blitz - High performance HTML and CSS renderer powered by WGPU
Relm4 - An idiomatic GUI library inspired by Elm and based on gtk4-rs [Moved to: https://github.com/Relm4/Relm4]