4 releases (2 breaking)
0.3.0 | Nov 16, 2023 |
---|---|
0.2.1 | May 13, 2023 |
0.2.0 | May 7, 2023 |
0.1.0 | Sep 14, 2022 |
#2745 in Parser implementations
290KB
6.5K
SLoC
hlbc-gui
A GUI for hlbc.
The GUI also runs on the web ! The latest release is available at : https://gui-yom.github.io/hlbc
Installation
Download a prebuilt binary from the releases page (built from the CI, Windows & Linux).
Or build from the latest version :
cargo install hlbc-gui
Or build the crate from the latest sources :
git clone https://github.com/Gui-Yom/hlbc
cd hlbc/crates/hlbc-gui
cargo build --release
# The resulting binary can be found in ../target/release
About the GUI
The GUI is immediate mode and is built with egui. I would very like to find a retained mode GUI framework but the options are still scarce in Rust. I need something complete and cross-platform. It needs to have support for rich text (code display) and a docking UI (or implementable at least), and also not be ugly.
- Xilem ? Too damn early, it's still at prototyping stage.
- Floem ? Too damn early too, also a stock application consumes 500MB+ of memory which is kinda ridiculous.
- GTK ? Probably the best option. I should look into it.
- Web UI ? e.g. tauri / ultralight. Web is meh but allows for anything. I would love a stripped down and embeddable html/css engine without any javascript where events are handled directly in Rust. Maybe sciter ?
- Flutter ? having looked that much into it.
- Qt ? are the rust bindings functional ?
The thing is, egui sometimes feel subpar but is good enough everywhere. The ecosystem is nice and the development experience is amazing. Difficult to find better.
Dependencies
~8–47MB
~771K SLoC