[package]
edition = "2024"
rust-version = "1.95"
name = "sword-web"
version = "0.3.0"
authors = ["luciano revillod <lrevillod2022@alu.uct.cl>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Web controllers and runtime for the Sword framework"
homepage = "https://sword-web.github.io"
documentation = "https://docs.rs/sword"
readme = "README.md"
keywords = [
"sword",
"web",
"framework",
"axum",
"http",
]
categories = [
"web-programming",
"web-programming::http-server",
]
license = "MIT"
repository = "https://github.com/sword-web/sword"
resolver = "2"
[package.metadata.docs.rs]
all-features = true
rustdoc-args = [
"--cfg",
"docsrs",
]
[features]
default = []
multipart = ["axum/multipart"]
swagger-ui = ["dep:utoipa-swagger-ui"]
validation-validator = ["dep:validator"]
[lib]
name = "sword_web"
path = "src/lib.rs"
[dependencies.axum]
version = "0.8.7"
[dependencies.bytes]
version = "1.10.1"
[dependencies.chrono]
version = "0.4.42"
[dependencies.form_urlencoded]
version = "1.2.2"
[dependencies.http-body-util]
version = "0.1.3"
[dependencies.inventory]
version = "0.3.21"
[dependencies.mime]
version = "0.3.17"
[dependencies.serde]
version = "1.0.219"
features = ["derive"]
[dependencies.serde_json]
version = "1.0.140"
[dependencies.serde_urlencoded]
version = "0.7.1"
[dependencies.sword-core]
version = "0.3.0"
[dependencies.sword-layers]
version = "0.3.0"
features = [
"tracing",
"not-found",
"request-id",
"cookies",
"req-timeout",
"body-limit",
]
[dependencies.sword-macros]
version = "0.3.0"
features = ["web-controllers"]
[dependencies.thiserror]
version = "2.0.17"
[dependencies.tokio]
version = "^1.0"
features = ["full"]
[dependencies.tower]
version = "0.5.2"
[dependencies.tracing]
version = "0.1.41"
[dependencies.utoipa-swagger-ui]
version = "9.0.2"
features = ["axum"]
optional = true
[dependencies.validator]
version = "0.20.0"
features = ["derive"]
optional = true
[dev-dependencies.axum-test]
version = "17.3.0"
[dev-dependencies.tower-http]
version = "0.6.6"
features = [
"limit",
"cors",
"trace",
]