[package]
edition = "2024"
rust-version = "1.95"
name = "boardwalk"
version = "0.2.0"
authors = ["Kevin Swiber <kevin@swiber.dev>"]
build = false
publish = true
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Hypermedia server framework with reverse-tunnel federation"
homepage = "https://github.com/kevinswiber/boardwalk"
documentation = "https://docs.rs/boardwalk"
readme = "README.md"
keywords = [
"hypermedia",
"siren",
"websocket",
"peer",
"tunnel",
]
categories = [
"web-programming::http-server",
"web-programming::websocket",
"network-programming",
"api-bindings",
]
license = "Apache-2.0"
repository = "https://github.com/kevinswiber/boardwalk"
[features]
dangerous-test-tls = []
[lib]
name = "boardwalk"
path = "src/lib.rs"
[[test]]
name = "apps"
path = "tests/apps.rs"
[[test]]
name = "factory"
path = "tests/factory.rs"
[[test]]
name = "http"
path = "tests/http.rs"
[[test]]
name = "macros"
path = "tests/macros.rs"
[[test]]
name = "observe"
path = "tests/observe.rs"
[[test]]
name = "peer"
path = "tests/peer.rs"
[[test]]
name = "persist"
path = "tests/persist.rs"
[[test]]
name = "scout"
path = "tests/scout.rs"
[[test]]
name = "shutdown"
path = "tests/shutdown.rs"
[[test]]
name = "streams"
path = "tests/streams.rs"
[[test]]
name = "tls"
path = "tests/tls.rs"
[dependencies.anyhow]
version = "1"
[dependencies.async-stream]
version = "0.3"
[dependencies.async-trait]
version = "0.1"
[dependencies.axum]
version = "0.8"
features = [
"ws",
"macros",
]
[dependencies.backon]
version = "1"
[dependencies.base64]
version = "0.22"
[dependencies.boardwalk-macros]
version = "0.2.0"
[dependencies.bytes]
version = "1.9"
[dependencies.futures]
version = "0.3"
[dependencies.h2]
version = "0.4"
[dependencies.http]
version = "1.2"
[dependencies.http-body-util]
version = "0.1"
[dependencies.hyper]
version = "1.5"
features = ["full"]
[dependencies.hyper-util]
version = "0.1"
features = [
"full",
"client-legacy",
"http2",
"tokio",
]
[dependencies.mime]
version = "0.3"
[dependencies.rand]
version = "0.9"
[dependencies.redb]
version = "2"
[dependencies.regex]
version = "1"
[dependencies.rustls]
version = "0.23"
features = [
"std",
"tls12",
"aws-lc-rs",
"std",
"tls12",
]
default-features = false
[dependencies.rustls-pki-types]
version = "1"
[dependencies.rustls-platform-verifier]
version = "0.7"
[dependencies.serde]
version = "1"
features = ["derive"]
[dependencies.serde_json]
version = "1"
[dependencies.serde_urlencoded]
version = "0.7"
[dependencies.sha1]
version = "0.10"
[dependencies.thiserror]
version = "2"
[dependencies.time]
version = "0.3"
features = [
"serde",
"macros",
"formatting",
]
[dependencies.tokio]
version = "1.47"
features = ["full"]
[dependencies.tokio-rustls]
version = "0.26"
features = [
"aws-lc-rs",
"tls12",
]
default-features = false
[dependencies.tower]
version = "0.5"
features = ["full"]
[dependencies.tower-http]
version = "0.6"
features = [
"trace",
"cors",
]
[dependencies.tracing]
version = "0.1"
[dependencies.url]
version = "2"
features = ["serde"]
[dependencies.urlencoding]
version = "2"
[dependencies.uuid]
version = "1"
features = [
"v4",
"v7",
"serde",
]
[dev-dependencies.rcgen]
version = "0.13"
[dev-dependencies.reqwest]
version = "0.12"
features = [
"json",
"rustls-tls",
]
default-features = false
[dev-dependencies.rustls]
version = "0.23"
features = [
"std",
"tls12",
"aws-lc-rs",
"std",
"tls12",
"aws-lc-rs",
]
default-features = false
[dev-dependencies.tempfile]
version = "3"
[dev-dependencies.tokio-rustls]
version = "0.26"
features = [
"aws-lc-rs",
"tls12",
"aws-lc-rs",
"tls12",
]
default-features = false
[dev-dependencies.tokio-tungstenite]
version = "0.29"
[dev-dependencies.tower]
version = "0.5"
features = [
"full",
"util",
]
[dev-dependencies.tracing-subscriber]
version = "0.3"
features = ["env-filter"]