[package]
name = "dioxus-liveview"
version = { workspace = true }
edition = "2021"
repository = "https://github.com/DioxusLabs/dioxus/"
homepage = "https://dioxuslabs.com/learn/0.6/getting_started"
keywords = ["dom", "ui", "gui", "react", "liveview"]
description = "Build server-side apps with Dioxus"
authors = ["Jonathan Kelley", "Evan Almloff"]
license = "MIT OR Apache-2.0"

[dependencies]
thiserror = { workspace = true }
tracing = { workspace = true }
slab = { workspace = true }
futures-util = { workspace = true, default-features = false, features = [
    "sink",
] }
futures-channel = { workspace = true }
tokio = { workspace = true, features = ["time", "macros"] }
tokio-stream = { workspace = true, features = ["net"] }
tokio-util = { workspace = true, features = ["rt"] }
serde = { workspace = true, features = ["derive"] }
serde_json = { workspace = true }
dioxus-html = { workspace = true, features = ["serialize"] }
dioxus-document = { workspace = true }
dioxus-history = { workspace = true }
rustc-hash = { workspace = true }
dioxus-core = { workspace = true, features = ["serialize"] }
dioxus-interpreter-js = { workspace = true, features = ["binary-protocol"] }
dioxus-devtools = { workspace = true, optional = true }
dioxus-cli-config = { workspace = true }
generational-box = { workspace = true }

# axum
axum = { workspace = true, optional = true, default-features = true, features = ["ws"] }

[dev-dependencies]
tokio = { workspace = true, features = ["full"] }
axum = { workspace = true, features = ["ws"] }
tower = { workspace = true }
dioxus = { workspace = true }

[features]
default = ["devtools", "multi-thread"]
axum = ["dep:axum"]
multi-thread = ["tokio/rt-multi-thread"]
devtools = ["dep:dioxus-devtools"]

[[example]]
name = "axum"
required-features = ["axum"]
doc-scrape-examples = true

[[example]]
name = "axum_stress"
required-features = ["axum"]
doc-scrape-examples = true
