* Update rfd 0.8 -> 0.8
* Update webbrowser 0.5 -> 0.6
* Update unicode_names2 0.4 -> 0.5
* cargo update
Updating crates.io index
Adding arrayvec v0.7.2
Updating async-lock v2.4.0 -> v2.5.0
Updating autocfg v1.0.1 -> v1.1.0
Updating cc v1.0.72 -> v1.0.73
Updating cfg-expr v0.9.1 -> v0.10.1
Updating core-foundation v0.9.2 -> v0.9.3
Updating crc32fast v1.3.1 -> v1.3.2
Updating crossbeam-epoch v0.9.6 -> v0.9.7
Updating crossbeam-utils v0.8.6 -> v0.8.7
Updating deflate v0.9.1 -> v1.0.0
Removing encoding v0.2.33
Removing encoding-index-japanese v1.20141219.5
Removing encoding-index-korean v1.20141219.5
Removing encoding-index-simpchinese v1.20141219.5
Removing encoding-index-singlebyte v1.20141219.5
Removing encoding-index-tradchinese v1.20141219.5
Removing encoding_index_tests v0.1.4
Updating enum-map v2.0.1 -> v2.0.2
Updating futures-core v0.3.19 -> v0.3.21
Updating futures-io v0.3.19 -> v0.3.21
Updating futures-sink v0.3.19 -> v0.3.21
Updating futures-task v0.3.19 -> v0.3.21
Updating futures-util v0.3.19 -> v0.3.21
Updating gio-sys v0.15.4 -> v0.15.6
Updating glib-sys v0.15.4 -> v0.15.6
Updating gobject-sys v0.15.1 -> v0.15.5
Updating image v0.24.0 -> v0.24.1
Updating kurbo v0.8.0 -> v0.8.3
Updating libc v0.2.117 -> v0.2.119
Updating memmap2 v0.5.2 -> v0.5.3
Adding miniz_oxide v0.5.1
Adding ndk-context v0.1.0
Removing ndk-glue v0.5.0
Removing ndk-glue v0.6.0
Adding ndk-glue v0.5.1
Adding ndk-glue v0.6.1
Updating ntapi v0.3.6 -> v0.3.7
Updating png v0.17.2 -> v0.17.3
Updating proc-macro-crate v1.1.0 -> v1.1.2
Updating rand v0.8.4 -> v0.8.5
Removing rand_hc v0.3.1
Updating rustls v0.20.2 -> v0.20.4
Updating semver v1.0.4 -> v1.0.5
Updating serde_json v1.0.78 -> v1.0.79
Updating system-deps v6.0.1 -> v6.0.2
Updating tracing v0.1.30 -> v0.1.31
Updating tracing-subscriber v0.3.7 -> v0.3.9
Updating tts v0.20.2 -> v0.20.3
Removing windows v0.30.0
Removing windows_aarch64_msvc v0.30.0
Removing windows_i686_gnu v0.30.0
Removing windows_i686_msvc v0.30.0
Removing windows_x86_64_gnu v0.30.0
Removing windows_x86_64_msvc v0.30.0
|
||
|---|---|---|
| .. | ||
| examples | ||
| src | ||
| CHANGELOG.md | ||
| Cargo.toml | ||
| README.md | ||
README.md
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).