[package]
name = "facet-axum"
version = "0.32.2"
edition = "2024"
rust-version = "1.89.0"
license = "MIT OR Apache-2.0"
repository = "https://github.com/facet-rs/facet"
description = "Axum integration for Facet - extractors and responses using Facet's serialization"
keywords = ["axum", "web", "json", "serialization", "facet"]
categories = ["web-programming", "encoding"]

[features]
ci = [] # CI feature
default = ["json", "form"]
json = ["facet-json/axum"]
form = ["facet-urlencoded/axum"]
yaml = ["facet-yaml/axum"]
toml = ["facet-toml/axum"]
xml = ["facet-xml/axum"]
kdl = ["facet-kdl/axum"]
msgpack = ["facet-msgpack/axum"]
postcard = ["facet-postcard/axum"]
all = ["json", "form", "yaml", "toml", "xml", "kdl", "msgpack", "postcard"]

[dependencies]
facet-json = { path = "../facet-json", version = "0.32.2", optional = true }
facet-urlencoded = { path = "../facet-urlencoded", version = "0.32.2", optional = true }
facet-yaml = { path = "../facet-yaml", version = "0.32.2", optional = true }
facet-toml = { path = "../facet-toml", version = "0.32.2", optional = true }
facet-xml = { path = "../facet-xml", version = "0.32.2", optional = true }
facet-kdl = { path = "../facet-kdl", version = "0.32.2", optional = true }
facet-msgpack = { path = "../facet-msgpack", version = "0.32.2", optional = true }
facet-postcard = { path = "../facet-postcard", version = "0.32.2", optional = true }

[dev-dependencies]
axum = "0.8"
facet = { path = "../facet" }
tokio = { version = "1", features = ["macros", "rt-multi-thread"] }
tower = { version = "0.5", features = ["util"] }
