[package] name = "telfax" version = "0.1.0" edition = "2024" description = "A standalone fax server library and application" license = "MIT" [features] default = ["server"] server = ["dep:axum", "dep:clap", "dep:tokio", "dep:rusqlite", "dep:tower-http", "dep:tracing-subscriber"] cli = ["dep:clap"] [lib] name = "telfax" [[bin]] name = "telfax" path = "src/main.rs" required-features = ["server"] [dependencies] # Serial modem serialport = "4.3" # Fax codec (T.4/T.6 compression) fax = "0.2" # Document handling image = "0.25" tiff = "0.11" lopdf = "0.36" # Error handling thiserror = "2" anyhow = "1" # Serialization serde = { version = "1", features = ["derive"] } serde_json = "1" # Logging tracing = "0.1" # Async (for server mode) tokio = { version = "1", features = ["full"], optional = true } axum = { version = "0.8", optional = true } tower-http = { version = "0.6", features = ["cors"], optional = true } tracing-subscriber = { version = "0.3", features = ["json", "env-filter"], optional = true } # CLI / Config clap = { version = "4", features = ["derive"], optional = true } # Queue persistence rusqlite = { version = "0.32", features = ["bundled"], optional = true } # UUID for job IDs uuid = { version = "1", features = ["v4", "serde"] } # Date/time chrono = { version = "0.4", features = ["serde"] } # Config file parsing toml = "0.8"