Files
dioxus/packages/server/Cargo.toml
T
Evan Almloff 6b70ba7cd2 Fix websocket server functions and add an example (#4107)
* Fix websocket server function

* Add websocket test

* add a websocket example

* fix clippy
2025-05-14 08:28:43 +02:00

112 lines
3.4 KiB
TOML

[package]
name = "dioxus-server"
authors = ["Jonathan Kelley", "Evan Almloff"]
version = { workspace = true }
edition = "2021"
description = "Fullstack utilities 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"
keywords = ["web", "desktop", "mobile", "gui", "server"]
resolver = "2"
[dependencies]
# dioxus
dioxus-lib = { workspace = true }
generational-box = { workspace = true }
# server functions
server_fn = { workspace = true, default-features = false }
# axum + native deps
axum = { workspace = true, default-features = false }
tower-http = { workspace = true, features = ["fs"], optional = true }
tokio-util = { workspace = true, features = ["rt"], optional = true }
tokio-stream = { workspace = true, features = ["sync"], optional = true }
tower = { workspace = true, features = ["util"], optional = true}
tower-layer = { version = "0.3.2", optional = true}
hyper-util = { workspace = true, features = ["full"], optional = true }
hyper = { workspace = true, optional = true }
http = { workspace = true }
# Dioxus + SSR
dioxus-ssr = { workspace = true }
dioxus-isrg = { workspace = true }
dioxus-router = { workspace = true, features = ["streaming"] }
dioxus-fullstack-hooks = { workspace = true }
dioxus-fullstack-protocol = { workspace = true }
dioxus-interpreter-js = { workspace = true, optional = true }
tracing = { workspace = true }
tracing-futures = { workspace = true }
once_cell = { workspace = true }
async-trait = { workspace = true }
serde = { workspace = true }
enumset = "1.1.5"
futures-util = { workspace = true }
futures-channel = { workspace = true }
ciborium = { workspace = true }
base64 = { workspace = true }
rustls = { workspace = true, optional = true }
hyper-rustls = { workspace = true, optional = true }
pin-project = { version = "1.1.2" }
thiserror = { workspace = true }
bytes = "1.4.0"
parking_lot = { workspace = true, features = ["send_guard"] }
web-sys = { version = "0.3.61", features = [
"Window",
"Document",
"Element",
"HtmlDocument",
"Storage",
"console",
] }
dioxus-cli-config = { workspace = true }
dioxus-devtools = { workspace = true, optional = true }
aws-lc-rs = { version = "1.8.1", optional = true }
dioxus-history = { workspace = true }
subsecond.workspace = true
inventory = { workspace = true }
dashmap = "6.1.0"
[target.'cfg(target_arch = "wasm32")'.dependencies]
tokio = { workspace = true, features = ["rt", "sync", "macros"] }
[target.'cfg(not(target_arch = "wasm32"))'.dependencies]
tokio = { workspace = true, features = ["rt", "sync", "rt-multi-thread", "macros", "net"] }
[dev-dependencies]
dioxus = { workspace = true, features = ["fullstack"] }
[features]
default = ["devtools", "full"]
full = [
"core",
"server_fn/ssr",
"dep:tower-http",
"default-tls",
"dep:tower",
"dep:hyper",
"dep:tower-layer",
"dep:tokio-util",
"dep:hyper-util",
]
core = [
"server_fn/axum-no-default",
"server_fn/ssr",
"document",
]
devtools = ["dep:dioxus-devtools"]
document = ["dep:dioxus-interpreter-js"]
default-tls = ["server_fn/default-tls"]
rustls = ["server_fn/rustls", "dep:rustls", "dep:hyper-rustls"]
aws-lc-rs = ["dep:aws-lc-rs"]
[package.metadata.docs.rs]
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
features = ["axum", "web", "aws-lc-rs"]