[package] name = "effectcraft-web" description = "EffectCraft in the browser (wasm32): eframe web runner, in-memory files, browser file pickers and downloads, window.effectcraft API" version.workspace = true edition.workspace = true license.workspace = true publish = false [lints] workspace = true [lib] crate-type = ["cdylib", "rlib"] # Everything is wasm32-only: on other targets this crate is empty (so `cargo test --workspace` # and clippy stay cheap). Build with `cargo xtask web` (see docs/web.md). [target.'cfg(target_arch = "wasm32")'.dependencies] effectcraft-engine = { workspace = true } effectcraft-host = { workspace = true } effectcraft-media = { workspace = true } effectcraft-export = { workspace = true } effectcraft-expr = { workspace = true } effectcraft-ui-egui = { workspace = true } egui = { workspace = true } eframe = { workspace = true, features = ["default_fonts", "wgpu"] } serde_json = { workspace = true } log = { workspace = true } # The wasm-bindgen CLI used by `cargo xtask web` must be exactly this version. wasm-bindgen = "=0.2.129" wasm-bindgen-futures = "0.4" js-sys = "0.3" web-sys = { version = "0.3", features = [ "Blob", "BlobPropertyBag", "CssStyleDeclaration", "Document", "Element", "Event", "EventTarget", "File", "FileList", "HtmlAnchorElement", "HtmlCanvasElement", "HtmlElement", "HtmlInputElement", "Location", "Url", "UrlSearchParams", "Window", ] }