content: [package]
  name = "norma"
  version = "0.0.3"
  edition = "2021"
  rust-version = "1.77"
  authors = ["Mike Ivanichev <mike@netstalker.dev>"]
  license = "Apache-2.0 OR MIT"
  readme = "README.md"
  repository = "https://github.com/MikeIvanichev/norma"
  homepage = "https://github.com/MikeIvanichev/norma"
  description = "A pure Rust speech to text library"
  categories = ["multimedia::audio"]
  keywords = ["stt", "ai", "whisper", "transcription"]
  
  [dependencies]
  thiserror = "1.0.61"
  cpal = "0.15.3"
  dasp_sample = "0.11.0"
  dasp_frame = "0.11.0"
  dasp_signal = "0.11.0"
  dasp_ring_buffer = "0.11.0"
  dasp_interpolate = { version = "0.11.0", features = ["sinc"] }
  thingbuf = "0.1.6"
  tracing = { version = "0.1.40" }
  tokio = { version = "1.40.0", features = ["sync"] }
  jod-thread = "0.1.2"
  
  # Whisper
  candle-core = { version = "0.7.2", optional = true }
  candle-nn = { version = "0.7.2", optional = true }
  candle-transformers = { version = "0.7.2", optional = true }
  tokenizers = { version = "0.20.0", optional = true }
  hf-hub = { version = "0.3.2", features = ["tokio"], optional = true }
  serde_json = { version = "1.0.119", optional = true }
  rand = { version = "0.8.5", optional = true }
  byteorder = { version = "1.5.0", optional = true }
  strum = { version = "0.26.3", features = ["derive"], optional = true }
  
  # Serde
  serde = { version = "1.0.202", optional = true }
  
  [dev-dependencies]
  tokio = { version = "1.40.0", features = ["full"] }
  
  # for minimal-versions
  [target.'cfg(any())'.dependencies]
  openssl = { version = "0.10.55", optional = true }
  
  [features]
  default = [
    "serde",
    "whisper",
    "_mock",
  ] # By default ship with all models enabled
  whisper = [
    "candle-core",
    "candle-nn",
    "candle-transformers",
    "tokenizers",
    "hf-hub",
    "serde_json",
    "rand",
    "byteorder",
    "strum",
  ]
  # A mock model used for testing
  _mock = []
  serde = ["dep:serde"]
  jack = ["cpal/jack"]
  oboe-shared-stdcxx = ["cpal/oboe-shared-stdcxx"]
  #Require cuda
  cuda = ["candle-core/cuda", "candle-nn/cuda", "candle-transformers/cuda"]
  flash-attn = ["cuda", "candle-transformers/flash-attn"]
  # Require cudnn
  cudnn = ["cuda", "candle-core/cudnn"]
  # Only applicable to MacOS
  metal = ["candle-core/metal", "candle-nn/metal", "candle-transformers/metal"]
  accelerate = [
    "candle-core/accelerate",
    "candle-nn/accelerate",
    "candle-transformers/accelerate",
  ]
  