[package]
name = "calendar-backend"
version = "0.1.0"
edition = "2021"

[[bin]]
name = "backend"
path = "src/main.rs"

[dependencies]
calendar-models = { workspace = true }

# Backend authentication dependencies
jsonwebtoken = "9.0"
tokio = { version = "1.0", features = ["full"] }
axum = { version = "0.7", features = ["json"] }
tower = "0.4"
tower-http = { version = "0.5", features = ["cors"] }
hyper = { version = "1.0", features = ["full"] }

# Shared dependencies
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
chrono = { version = "0.4", features = ["serde"] }
uuid = { version = "1.0", features = ["v4", "serde"] }
anyhow = "1.0"

# CalDAV dependencies
reqwest = { version = "0.11", features = ["json"] }
ical = "0.7"
regex = "1.0"
dotenvy = "0.15"
base64 = "0.21"
thiserror = "1.0"
lazy_static = "1.4"

# Database dependencies
sqlx = { version = "0.7", features = ["runtime-tokio", "sqlite", "uuid", "chrono", "json"] }
tokio-rusqlite = "0.5"

[dev-dependencies]
tokio = { version = "1.0", features = ["macros", "rt"] }
reqwest = { version = "0.11", features = ["json"] }
tower = { version = "0.4", features = ["util"] }
hyper = "1.0"