[package] name = "egui_demo_app" version.workspace = true authors = ["Emil Ernerfeldt "] license.workspace = true edition.workspace = true rust-version.workspace = true publish = false default-run = "egui_demo_app" [package.metadata.docs.rs] all-features = true [lib] crate-type = ["cdylib", "rlib"] [features] default = ["glow", "persistence"] # image_viewer adds about 0.9 MB of WASM web_app = ["http", "persistence"] http = ["ehttp", "image", "poll-promise", "egui_extras/image"] image_viewer = ["image", "egui_extras/all_loaders", "rfd"] persistence = ["eframe/persistence", "egui/persistence", "serde"] puffin = ["eframe/puffin", "dep:puffin", "dep:puffin_http"] serde = ["dep:serde", "egui_demo_lib/serde", "egui/serde"] syntect = ["egui_demo_lib/syntect"] glow = ["eframe/glow"] wgpu = ["eframe/wgpu", "bytemuck", "dep:wgpu"] [dependencies] chrono = { version = "0.4", default-features = false, features = [ "js-sys", "wasmbind", ] } eframe = { version = "0.25.0", path = "../eframe", default-features = false, features = [ "web_screen_reader", ] } egui = { version = "0.25.0", path = "../egui", features = [ "callstack", "extra_debug_asserts", "log", ] } egui_demo_lib = { version = "0.25.0", path = "../egui_demo_lib", features = [ "chrono", ] } egui_extras = { version = "0.25.0", path = "../egui_extras", features = [ "image", ] } log = { version = "0.4", features = ["std"] } # Optional dependencies: bytemuck = { version = "1.7.1", optional = true } puffin = { version = "0.18", optional = true } puffin_http = { version = "0.15", optional = true } # Enable both WebGL & WebGPU when targeting the web (these features have no effect when not targeting wasm32) wgpu = { workspace = true, features = ["webgpu", "webgl"], optional = true } # feature "http": ehttp = { version = "0.4", optional = true } image = { version = "0.24", optional = true, default-features = false, features = [ "jpeg", "png", ] } poll-promise = { version = "0.3", optional = true, default-features = false } # feature "persistence": serde = { version = "1", optional = true, features = ["derive"] } # native: [target.'cfg(not(target_arch = "wasm32"))'.dependencies] env_logger = { version = "0.10", default-features = false, features = [ "auto-color", "humantime", ] } rfd = { version = "0.11", optional = true } # web: [target.'cfg(target_arch = "wasm32")'.dependencies] wasm-bindgen = "=0.2.90" wasm-bindgen-futures = "0.4" web-sys = "0.3"