[package]
name = "elevenlabs"
version = "0.1.5"
edition = "2024"
rust-version = "1.85"
description = "Agent-friendly CLI for the ElevenLabs AI audio platform (TTS, STT, voices, agents, music)"
license = "MIT"
repository = "https://github.com/199-biotechnologies/elevenlabs-cli"
homepage = "https://github.com/199-biotechnologies/elevenlabs-cli"
documentation = "https://github.com/199-biotechnologies/elevenlabs-cli#readme"
readme = "README.md"
keywords = ["elevenlabs", "cli", "tts", "stt", "voice"]
categories = ["command-line-utilities", "multimedia::audio", "api-bindings"]
authors = ["199 Biotechnologies <boris@199bio.com>"]

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

[dependencies]
# CLI
clap = { version = "4.5", features = ["derive", "env"] }

# Output
serde = { version = "1", features = ["derive"] }
serde_json = "1"
comfy-table = "7"
owo-colors = "4"

# Errors
thiserror = "2"

# HTTP
reqwest = { version = "0.12", default-features = false, features = ["json", "multipart", "rustls-tls", "stream", "blocking"] }
tokio = { version = "1", features = ["rt-multi-thread", "macros", "fs", "io-util", "io-std"] }
futures-util = "0.3"
bytes = "1"

# Config
figment = { version = "0.10", features = ["toml", "env"] }
toml = "0.8"

# Paths
directories = "6"

# Self-update
self_update = { version = "0.42", features = ["archive-tar", "compression-flate2"] }

# Utility
mime_guess = "2"
base64 = "0.22"

[dev-dependencies]
assert_cmd = "2"
predicates = "3"
tempfile = "3"
wiremock = "0.6"
tokio = { version = "1", features = ["rt-multi-thread", "macros"] }

[profile.release]
lto = true
codegen-units = 1
strip = true
opt-level = 3
panic = "abort"
