https://github.com/tauri-apps/egui
egui: an easy-to-use immediate mode GUI in pure Rust
https://github.com/tauri-apps/egui
Last synced: 3 months ago
JSON representation
egui: an easy-to-use immediate mode GUI in pure Rust
- Host: GitHub
- URL: https://github.com/tauri-apps/egui
- Owner: tauri-apps
- License: apache-2.0
- Fork: true (emilk/egui)
- Created: 2021-11-03T19:33:46.000Z (about 4 years ago)
- Default Branch: 0.21
- Last Pushed: 2024-03-22T11:17:53.000Z (almost 2 years ago)
- Last Synced: 2024-10-29T21:06:03.309Z (about 1 year ago)
- Language: Rust
- Homepage:
- Size: 50.3 MB
- Stars: 12
- Watchers: 2
- Forks: 11
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE-APACHE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# egui
> egui (pronounced "e-gooey") is a simple, fast, and highly portable immediate mode GUI library for Rust.
>
> egui aims to be the easiest-to-use Rust GUI library, and the simplest way to make a web app in Rust.
[](https://crates.io/crates/egui)
[](https://docs.rs/egui)
```
[dependencies]
egui = "0.22.0"
```
This repository provides binding for egui to use tao instead. Currently only `glow` backend is supported.
For more information on how to use egui, please check out [egui repository](https://github.com/emilk/egui) for both [simple examples](https://github.com/emilk/egui/tree/master/examples) and [detailed documents](https://docs.rs/egui).
## Who is egui for?
Quoting from egui repository:
> [...] if you are writing something interactive in Rust that needs a simple GUI, egui may be for you.
## Demo
Demo app uses [`eframe_tao`](https://github.com/tauri-apps/egui/tree/master/crates/eframe).
To test the demo app locally, run `cargo run --release -p egui_demo_app`.
The native backend is [`egui_glow_tao`](https://github.com/tauri-apps/egui/tree/master/crates/egui_glow) (using [`glow`](https://crates.io/crates/glow)) and should work out-of-the-box on Mac and Windows, but on Linux you need to first run:
`sudo apt-get install -y libclang-dev libgtk-3-dev libxcb-render0-dev libxcb-shape0-dev libxcb-xfixes0-dev libxkbcommon-dev libssl-dev`
On Fedora Rawhide you need to run:
`dnf install clang clang-devel clang-tools-extra libxkbcommon-devel pkg-config openssl-devel libxcb-devel gtk3-devel atk fontconfig-devel`
**NOTE**: This is just for the demo app - egui itself is completely platform agnostic!