[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"

[project]
name = "vaani"
version = "0.2.4"
description = "macOS menu bar app that captures voice, transcribes, and enhances text with AI"
readme = "README.md"
requires-python = ">=3.10"
license = "MIT"
dependencies = [
    "sounddevice>=0.4",
    "soundfile>=0.12",
    "numpy>=1.24",
    "torch>=2.0",
    "silero-vad>=5.0",
    "openai>=1.0",
    "anthropic>=0.30",
    "pynput>=1.7",
    "rumps>=0.4",
    "pydantic-settings>=2.0",
    "pyyaml>=6.0",
    "keyring>=24.0",
    "cryptography>=41.0",
    "click>=8.0",
    "spacy>=3.0",
    "pywebview>=5.0",
    "certifi",
]

[project.optional-dependencies]
test = ["pytest>=8.0", "pytest-cov>=4.0", "pytest-mock>=3.12"]

[project.scripts]
vaani = "vaani.main:cli"

[tool.hatch.build.targets.wheel]
packages = ["src/vaani"]

[tool.pytest.ini_options]
testpaths = ["tests"]
addopts = "-v --tb=short --strict-markers"
markers = ["integration: tests requiring multiple modules wired together"]
