iced
egui
Our great sponsors
iced | egui | |
---|---|---|
122 | 155 | |
17,702 | 13,021 | |
3.5% | - | |
9.8 | 9.8 | |
4 days ago | 4 days ago | |
Rust | Rust | |
MIT License | MIT OR Apache-2.0. |
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.
iced
-
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
-
C++ evolution vs C++ successor languages. Circle's feature pragmas let you select your own "evolver language."
Lets take me as an example, I am a crossplatform GUI application developer, with C++ I have Qt which is an awesome, feature-rich and battle tested framework which runs on virtually any device and has it's own declarative UI language that makes UI development much more pleasant. What what would I go for with rust? The best I've found so far is iced (https://github.com/iced-rs/iced) which indeed looks nice, but at its current state, it is not remotely comparable to Qt. The last time I checked, It did not even support multi line text editing.
- [Media] A GUI installer for redox is coming soon, written in iced!
-
Hey Rustaceans! Got a question? Ask here (4/2023)!
iced
-
Implement both API and GUI?
Besides a browser based GUI you have many other options like egui, Iced etc. In this case you can still use HTTP for communication between your programs, but also sockets, and, if the programs run on the same machine, named pipes and shared memory (which is more efficient for sharing big data chunks).
-
Can I develop desktop apps with Rust without using a framework such as Tauri?
If you want to use separate codebases, then you might consider egui, iced or gtk-rs for the desktop part.
-
Are there plans to improve concurrency in Rust?
I think this is something that iced is doing really well (which is inspired by elm which damn near did it perfectly, imo).
-
Dioxus: User interfaces that run anywhere
You can use GTK from Rust. But the Rust native ones aren't really there yet. [Iced](https://github.com/iced-rs/iced) which has been picked up by System76 and [Druid](https://github.com/linebender/druid) (and it's next gen version [Xilem](https://github.com/linebender/xilem)) are the ones to watch, along with Dioxus which is the main post here.
I'd expect there to be something useable by the end of 2023.
-
Rust Iced and IPC_Channel Example (Maybe it's useful to someone)
I'm working on a project and I came up with a boilerplate project using https://github.com/iced-rs/iced and https://github.com/servo/ipc-channel, so maybe this is useful to someone. I have ongoing questions on how to integrate libraries with this project that I'm working on, so please PM me if you have any interest in helping. Non-monetary at the moment. Thanks. (Hopefully this isn't too tasteless, I think the example I've made may be useful to other people as is.)
egui
-
Can't decide on a programming language for multiple reasons
If you don’t mind just drawing into a rectangle (without native UI components), more options open up. There’s plenty of Rust libraries for just drawing into a buffer. Like https://github.com/emilk/egui, which does provide UI components, just not native one.
-
Implement both API and GUI?
Besides a browser based GUI you have many other options like egui, Iced etc. In this case you can still use HTTP for communication between your programs, but also sockets, and, if the programs run on the same machine, named pipes and shared memory (which is more efficient for sharing big data chunks).
-
Can I develop desktop apps with Rust without using a framework such as Tauri?
If you want to use separate codebases, then you might consider egui, iced or gtk-rs for the desktop part.
-
Minimal 2D library for games? I'm struggling a bit to settle on one to learn.
egui: this is technically a GUI framework, but it supports arbitrary rendering through a simple api, and you can also access the underlying graphics APIs if you want to. The eframe crate makes it easy to make an egui window.
-
What's everyone working on this week (52/2022)?
A big thing keeping me on webview was accessibility - and with egui finally gaining AccessKit support, it spurred me into making some mockups, which I rather liked the look of.
-
Hey Rustaceans! Got a question? Ask here (52/2022)!
I'd recommend giving egui a try: https://github.com/emilk/egui/. It aims to be very simple to use, and the repo contains several examples.
-
Egui Web empty canvas, no errors.
I've opened an issue! on Github.
-
How do we set custom fonts in Egui?
The example is basically unchanged from 0.17 but now lives here: https://github.com/emilk/egui/tree/master/examples/custom_font
-
Rust: State of GUI, December 2022 – KAS blog
I can go into great detail here why but its beside the point. If you read my comment on the egui issue I linked above (same handle I use on HN) you may get an idea where I am coming from.
Most Human Computer Interface (HCI) guidlines for various platforms are based on typical late 90's early 2k desktop apps.
They were never updated to reflect on newer paradigmns for UX that evolved in recent years. Blame the fragmentation of the desktop and Electron & co.
IMHO this is the first problem the OS vendors need to solve before we can blame developers of UI libs to not make them look 'native enough'.
What are some alternatives?
tauri - Build smaller, faster, and more secure desktop applications with a web frontend.
imgui - Dear ImGui: Bloat-free Graphical User interface for C++ with minimal dependencies
yew - Rust / Wasm framework for building client web apps
druid - A data-first Rust-native UI design toolkit.
Druid - Apache Druid: a high performance real-time analytics database.
gtk-rs - Rust bindings for GTK 3
bevy - A refreshingly simple data-driven game engine built in Rust
fltk-rs - Rust bindings for the FLTK GUI library.
sixtyfps - Slint is a toolkit to efficiently develop fluid graphical user interfaces for any display: embedded devices and desktop applications. We support multiple programming languages, such as Rust, C++ or JavaScript. [Moved to: https://github.com/slint-ui/slint]