Ctrl K
ComunidadGuías…

backend/Cargo.toml

Rama main · réplica de lectura del repositorio original.

Archivo original ↗Preguntar a KiBot
[package]
name = "origin-speak-backend"
version = "0.1.42"
description = "Origin Speak - local voice-to-text dictation engine"
authors = ["Origin Speak"]
license = "MIT"
edition = "2021"

[features]
default = []
# VoxType's deployable Whisper strategy uses Vulkan as the cross-vendor
# Windows GPU backend and Metal on macOS. These SDKs are build-time inputs;
# shipped users only need a working graphics driver/runtime.
gpu-vulkan = ["whisper-rs/vulkan", "transcribe-cpp/vulkan"]
gpu-metal = ["whisper-rs/metal", "transcribe-cpp/metal"]
canary-cuda = ["transcribe-cpp/cuda"]

[lib]
name = "origin_speak_lib"
crate-type = ["rlib"]

[dependencies]
# Global shortcuts
global-hotkey = "0.7"

# Serialization
serde = { version = "1", features = ["derive"] }
serde_json = "1"

# Audio Capture
cpal = "0.15"
rubato = "0.16"

# Local speech-to-text
whisper-rs = "0.16.0"
transcribe-cpp = { version = "=0.2.3", default-features = false }

# Async runtime primitives used by transcription/download/capture coordination
tokio = { version = "1", features = ["fs", "io-util", "rt", "sync", "time"] }

futures-util = "0.3"

# HTTP for model downloads
reqwest = { version = "0.11", features = ["stream"] }
sha2 = "0.10"

# Text delivery
enigo = "0.2"

# Logging
log = "0.4"

# Date/Time
chrono = { version = "0.4", features = ["serde"] }

# UUID
uuid = { version = "1", features = ["v4"] }

# SQLite for persistent storage
rusqlite = { version = "0.31", features = ["bundled"] }

# Clipboard
arboard = "3"

# Directory paths
dirs-next = "2"

[target.'cfg(windows)'.dependencies]
windows = { version = "0.56", features = [
    "Win32_Foundation",
    "Win32_System_Com",
    "Win32_UI_WindowsAndMessaging", 
    "Win32_System_Threading",
    "Win32_UI_Accessibility",
    "Win32_UI_Input_KeyboardAndMouse"
] }

[profile.release]
strip = true
lto = true
# Whisper inference is compute-bound: `opt-level = "z"` (size) costs
# 20-40% CPU throughput versus speed optimization. Keep LTO + single
# codegen unit for speed; binary size growth is negligible next to models.
opt-level = 3
codegen-units = 1
panic = "abort"