2.7 KiB
eframe: the egui
framework
eframe
is the official framework library for writing apps using egui
. The app can be compiled both to run natively (cross platform) or be compiled to a web app (using WASM).
To get started, go to https://github.com/emilk/eframe_template/ and follow the instructions there!
You can also take a look at the eframe
examples folder. There is also an excellent tutorial video at https://www.youtube.com/watch?v=NtUkr_z7l84.
For how to use egui
, see the egui docs.
eframe
is a very thin crate that re-exports egui
andepi
with thin wrappers over the backends.
eframe
uses egui_web
for web and egui_glium
or egui_glow
for native.
To use on Linux, first run:
sudo apt-get install libxcb-render0-dev libxcb-shape0-dev libxcb-xfixes0-dev libspeechd-dev libxkbcommon-dev libssl-dev
Alternatives
The default native backend for eframe
is currently egui_glow
, but you can switch to the previous egui_glium
backend by putting this in your Cargo.toml
:
eframe = { version = "*", default-features = false, features = ["default_fonts", "egui_glium"] }
eframe
is not the only way to write an app using egui
! You can also try egui-miniquad
and egui_sdl2_gl
.
Companion crates
Not all rust crates work when compiled to WASM, but here are some useful crates have been designed to work well both natively and as WASM:
Name
The frame in eframe
stands both for the frame in which your egui
app resides and also for "framework" (frame
is a framework, egui
is a library).