[package] name = "kvitt-server" description = "Kvitt sync server (SPEC ยง6.3)." version.workspace = true edition.workspace = true rust-version.workspace = true publish.workspace = true [lints] workspace = true [lib] path = "src/lib.rs" [[bin]] name = "kvitt-server" path = "src/main.rs" [dependencies] axum = "0.8.9" base64 = "0.23.1" chrono = { version = "0.4.45", default-features = false, features = ["clock", "std"] } chrono-tz = "0.10.4" clap = { version = "4.6.7", features = ["derive", "env"] } getrandom = "0.4.3" image = { version = "0.25.10", default-features = false, features = ["jpeg", "png", "webp"] } kvitt-domain = { version = "0.1.0", path = "../kvitt-domain" } percent-encoding = "2.3.2" serde = { version = "1.0.229", features = ["derive"] } serde_json = "1.0.154" sha2 = "0.11.1" sqlx = { version = "0.9.0", default-features = false, features = ["runtime-tokio", "sqlite", "migrate", "macros"] } thiserror = "2.0.21" tokio = { version = "1.53.3", features = ["rt-multi-thread", "macros", "net", "signal", "time", "sync", "io-util"] } tokio-util = { version = "0.7.20", features = ["io"] } tower = { version = "0.5.3", features = ["util"] } tracing = "0.1.44" tracing-subscriber = { version = "0.3.23", features = ["json", "env-filter"] } utoipa = { version = "6.0.0", features = ["uuid"] } uuid = { version = "1.28.0", features = ["v7", "serde"] } [dev-dependencies] http-body-util = "0.1.5" serde_norway = "0.9.42"