[package]
name = "http_api"
version = "0.1.0"
description = "Declare modular HTTP client/server APIS using XHR, WebSocket and SSE"
edition.workspace = true
authors.workspace = true
license.workspace = true
[dependencies]
http_api_macro = { path = "../http_api_macro", version = "0.1.0"}
anyhow.workspace = true
serde.workspace = true
serde_json.workspace = true
axum = { workspace = true, optional = true }
tokio = { workspace = true, optional = true }
tokio-stream = { workspace = true, optional = true }
futures = { workspace = true, optional = true }
reqwest = { workspace = true, optional = true }
http-body-util = { workspace = true, optional = true }
[dev-dependencies]
tokio.workspace = true
tower = { workspace = true, features = ["util"] }
axum.workspace = true
reqwest = { workspace = true, features = ["stream"] }
futures.workspace = true
[features]
default = ["axum-adapter", "reqwest-adapter"]
axum-adapter = ["axum/ws", "axum", "tokio", "tokio-stream", "futures", "http-body-util"]
reqwest-adapter = ["reqwest", "tokio"]