[package] name = "dioxus-web" version = { workspace = true } authors = ["Jonathan Kelley"] edition = "2021" description = "Web-sys renderer for Dioxus: Build fullstack web, desktop, and mobile apps with a single codebase." license = "MIT OR Apache-2.0" repository = "https://github.com/DioxusLabs/dioxus/" homepage = "https://dioxuslabs.com/learn/0.6/getting_started" keywords = ["dom", "ui", "gui", "web", "wasm"] [dependencies] dioxus-core = { workspace = true } dioxus-core-types = { workspace = true } dioxus-cli-config = { workspace = true, features = ["web"] } dioxus-html = { workspace = true } dioxus-history = { workspace = true } dioxus-document = { workspace = true } dioxus-devtools = { workspace = true } dioxus-signals = { workspace = true } dioxus-interpreter-js = { workspace = true, features = [ "minimal_bindings", "webonly", ] } dioxus-fullstack-protocol = { workspace = true, features = ["web"], optional = true } generational-box = { workspace = true } js-sys = { workspace = true } wasm-bindgen = { workspace = true } wasm-bindgen-futures = { workspace = true } tracing = { workspace = true } rustc-hash = { workspace = true } futures-util = { workspace = true, features = ["std", "async-await", "async-await-macro"] } futures-channel = { workspace = true } serde_json = { version = "1.0", optional = true } serde = { version = "1.0", optional = true } serde-wasm-bindgen = { version = "0.6.5", optional = true } ciborium = { workspace = true, optional = true } async-trait = { workspace = true, optional = true } gloo-timers = { workspace = true, optional = true, features = ["futures"] } [dependencies.web-sys] version = "0.3.77" features = [ "AnimationEvent", "ClipboardEvent", "CloseEvent", "Comment", "CompositionEvent", "console", "CustomEvent", "DataTransfer", "Document", "DomRectReadOnly", "DragEvent", "FocusEvent", "History", "HtmlElement", "HtmlFormElement", "HtmlHeadElement", "HtmlInputElement", "HtmlSelectElement", "HtmlTextAreaElement", "IntersectionObserverEntry", "InputEvent", "KeyboardEvent", "MouseEvent", "NodeList", "PointerEvent", "ResizeObserverEntry", "ResizeObserverSize", "ScrollRestoration", "ScrollToOptions", "Text", "Touch", "TouchEvent", "TouchList", "TransitionEvent", "WheelEvent", "Window", ] [build-dependencies] lazy-js-bundle = { workspace = true } [features] default = ["mounted", "file_engine", "devtools", "document"] hydrate = ["web-sys/Comment", "dep:serde", "dep:dioxus-fullstack-protocol"] mounted = [ "web-sys/Element", "dioxus-html/mounted", "web-sys/Element", "web-sys/DomRect", "web-sys/ScrollIntoViewOptions", "web-sys/ScrollLogicalPosition", "web-sys/ScrollBehavior", "web-sys/HtmlElement", ] file_engine = [ "dioxus-html/file_engine", "dep:async-trait", "web-sys/File", "web-sys/FileList", "web-sys/FileReader" ] devtools = [ "web-sys/MessageEvent", "web-sys/WebSocket", "web-sys/Location", "dep:serde_json", "dep:serde", "dioxus-core/serialize", "dep:gloo-timers" ] document = ["dep:serde-wasm-bindgen", "dep:serde_json", "dep:serde"] [dev-dependencies] dioxus = { workspace = true, default-features = true } wasm-bindgen-test = "0.3.50" dioxus-ssr = { workspace = true, default-features = false } gloo-dialogs = { workspace = true } dioxus-web = { path = ".", features = ["hydrate"] } tracing-wasm = { workspace = true } [package.metadata.docs.rs] cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]