[package]
name = "kei-stt"
version = "0.1.0"
edition.workspace = true
rust-version.workspace = true
description = "Speech-to-text abstraction trait with 3 backends (whisper-local/Deepgram/OpenAI). Default = whisper-local (free, local)."
authors.workspace = true
license.workspace = true

[lib]
name = "kei_stt"
path = "src/lib.rs"

[dependencies]
async-trait = { workspace = true }
serde = { workspace = true, features = ["derive"] }
serde_json = { workspace = true }
thiserror = { workspace = true }
tokio = { workspace = true, features = ["macros", "rt-multi-thread", "process", "io-util", "fs"] }
reqwest = { workspace = true, features = ["multipart"] }
tracing = "0.1"
tempfile = { workspace = true }

[features]
default = ["whisper-local"]
whisper-local = []
deepgram = []
openai-whisper = []
all-backends = ["whisper-local", "deepgram", "openai-whisper"]

[dev-dependencies]
wiremock = { workspace = true }
tokio = { workspace = true }

[package.metadata.keisei]
maturity = "alpha"
trait = "SttBackend"
description = "STT abstraction with 3 backends (whisper-local/Deepgram/OpenAI). Default = whisper-local."
authors = ["Denis Parfionovich <parfionovich@keilab.io>"]
