Native Windows GUI
vgtk
Native Windows GUI | vgtk | |
---|---|---|
12 | 14 | |
1,901 | 1,038 | |
- | - | |
0.0 | 0.0 | |
12 days ago | about 2 years ago | |
Rust | Rust | |
MIT License | GNU General Public License v3.0 or later |
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.
Native Windows GUI
- I have 0 coding experience or knowledge. I used ChatGPT to create code that would automate 80% of my work and I don't know how to deal with this newfound power
-
Which GUI toolkit for Rust today.. few questions...
On windows, I'll probably use https://github.com/gabdube/native-windows-gui or https://github.com/microsoft/windows-rs both of them seem pretty solid.
-
Rust: State of GUI, December 2022 – KAS blog
https://github.com/gabdube/native-windows-gui isn't in the list but is quite a polished option for building Windows specific GUIs.
- Minimum effort Windows GUI choice?
- Tauri – Electron alternative written in Rust
- A light windows GUI toolkit for rust
-
Good Rust System Tray Library?
My crate native-windows-gui supports tray application, if you only care about Windows. Example: https://github.com/gabdube/native-windows-gui/blob/master/native-windows-gui/examples/system_tray_d.rs
-
What's everyone working on this week (15/2021)?
Created a small resident windows program that shows a different icon depending on battery level test how easy using windows-rs and native-windows-gui is. Picked this as an easy learning project after seeing Battery Buddy for macOS.
-
WinSafe: Win32 GUI and related APIs in safe, idiomatic Rust - after 1 year and 5 months of development, first experimental version is finally here
native-windows-ui => https://github.com/gabdube/native-windows-gui
-
The state of gui libraries in rust?
If you only need to support Windows desktop, then let me shill my crate: native-windows-gui. It's super lightweight and it wraps pretty much all the gui stuff provided by win32. Just note that isn't really customizable look-wise.
vgtk
-
Rust: State of GUI, December 2022 – KAS blog
A pretty fun Rust GUI experienc is vgtk[0], which is doing a bunch of macro magic to give a "we're coding in React" vibe to GTK+. I don't really have a specific thing I want to code in a native GUI at the moment but if I did I think this would be the most tempting for me.
[0]: https://github.com/bodil/vgtk/
-
Code bloat has become astronomical
a stateful GUI markup language is react. it is not yet the case that react-like code works for desktop, though there are cool examples like vgtk https://github.com/bodil/vgtk
- Vgtk - A declarative desktop ui framework for rust built on gtk and gtk-rs
-
A declarative desktop UI framework for Rust built on GTK and GTK-rs
from what i gather from https://github.com/bodil/vgtk/issues/78, you're better off using realm
I'm always curious to see these projects, because I've been experimenting with a React renderer for the GJS bindings for a while. It's frustrating because GTK "feels like" it's so close to being able to support a vdom/declarative paradigm, but the devil is in the details.
The simple use-cases like "Window > Box > Label" are easy to get going. The more complex widgets like Stack/Grid/TreeView ... aren't.
This project seems to have the same issue: https://github.com/bodil/vgtk/issues/40
This is made more difficult now GTK4 has removed the Container base class, so there's no longer a unified interface for adding children (although it had caveats in the first place).
I totally get the GTK view that (presumably) specific widgets are more intuitive with specific add/remove APIs (like the grid - one doesn't really "appendChild" to a grid).
It just feels like: if there was a consistent container API comparable to the web's appendChild approach, a vdom/declarative approach would require only a very light wrapper. Without it, I keep coming back to the idea of implementing wrapper widgets that expose that consistent API instead. And that's just not something I want to maintain - effectively duplicating each GTK widget for the purpose of making it fit into a tree model.
It's also a problem of trying to wrap richer functionality (pack_start and pack_end) into a simpler set (append only) of course.
So I don't know exactly what my point is :) Perhaps cautioning the reader that the simplicity of the approach comes with a catch.
-
Hacker News top posts: May 28, 2022
A declarative desktop UI framework for Rust built on GTK and GTK-rs\ (23 comments)
-
Newbie here. Just finished reading the book. What now?
Build your own To-do List Application in Rust: https://bodil.lol/vgtk/
What are some alternatives?
Termion - Mirror of https://gitlab.redox-os.org/redox-os/termion
neon - Neon: Serverless Postgres. We separated storage and compute to offer autoscaling, branching, and bottomless storage.
gtk - DEPRECATED, use https://github.com/gtk-rs/gtk3-rs repository instead!
headway - Self-hostable maps stack, powered by OpenStreetMap.
Azul - Desktop GUI Framework
orbtk - The Rust UI-Toolkit.
tauri - Build smaller, faster, and more secure desktop applications with a web frontend.
areweguiyet - A website built for the Rust community
imgui-rs - Rust bindings for Dear ImGui
piet - An abstraction for 2D graphics.
conrod - An easy-to-use, 2D GUI library written entirely in Rust.
Relm4 - Build truly native applications with ease!