[package]
edition = "2021"
name = "rust-tts-wrapper"
version = "0.1.0"
build = "build.rs"
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Cross-platform TTS wrapper with C API — mirrors js-tts-wrapper / SwiftTTSWrapper"
readme = "README.md"
keywords = [
"tts",
"text-to-speech",
"speech",
"accessibility",
"assistive-technology",
]
categories = [
"accessibility",
"api-bindings",
"multimedia::audio",
]
license = "MIT"
repository = "https://github.com/AACTools/rust-tts-wrapper"
[features]
cloud = [
"reqwest",
"serde_json",
"base64",
"speechmarkdown-rust",
"tungstenite",
"uuid",
"url",
]
default = [
"system",
"cloud",
"sherpaonnx",
]
sherpaonnx = [
"sherpa-onnx",
"serde_json",
]
system = ["speech-dispatcher"]
tungstenite = ["dep:tungstenite"]
url = ["dep:url"]
uuid = ["dep:uuid"]
[lib]
name = "rust_tts_wrapper"
crate-type = [
"cdylib",
"staticlib",
"lib",
]
path = "src/lib.rs"
[[test]]
name = "integration"
path = "tests/integration.rs"
[dependencies.anyhow]
version = "1"
[dependencies.base64]
version = "0.22"
optional = true
[dependencies.reqwest]
version = "0.12"
features = [
"blocking",
"json",
"rustls-tls",
]
optional = true
default-features = false
[dependencies.serde]
version = "1"
features = ["derive"]
[dependencies.serde_json]
version = "1"
optional = true
[dependencies.sherpa-onnx]
version = "1.13"
optional = true
[dependencies.speech-dispatcher]
version = "0.16"
optional = true
[dependencies.speechmarkdown-rust]
version = "0.1"
optional = true
[dependencies.tungstenite]
version = "0.29.0"
features = ["rustls-tls-webpki-roots"]
optional = true
[dependencies.url]
version = "2.5.8"
optional = true
[dependencies.uuid]
version = "1.23.2"
features = ["v4"]
optional = true
[build-dependencies.cbindgen]
version = "0.28"
[lints.clippy]
all = "warn"
cargo = "warn"
pedantic = "warn"