[project]
name = "seshat-tts"
version = "0.1.0"
description = "Hotkey-triggered screen OCR to Pocket TTS."
requires-python = ">=3.10,<3.15"
readme = "README.md"
license = { file = "LICENSE" }
authors = [
    { name = "Scriptriva Inc.", email = "support@scriptriva.com" },
]
keywords = ["ocr", "tts", "accessibility", "screen-capture", "pocket-tts"]
classifiers = [
    "Development Status :: 3 - Alpha",
    "Environment :: Win32 (MS Windows)",
    "Intended Audience :: End Users/Desktop",
    "Operating System :: Microsoft :: Windows",
    "Programming Language :: Python :: 3",
    "Programming Language :: Python :: 3.10",
    "Programming Language :: Python :: 3.13",
    "Topic :: Multimedia :: Sound/Audio :: Speech",
]
dependencies = [
    "keyboard>=0.13.5",
    "mss>=9.0.1",
    "pillow>=10.0.0",
    "pytesseract>=0.3.13",
    "openai>=1.0.0",
    "imageio-ffmpeg>=0.5.1",
    "requests>=2.20.0",
    "sounddevice>=0.4.6",
    "pocket-tts>=2.1.0",
    "pywin32>=306; platform_system == 'Windows'",
]

[project.optional-dependencies]
test = [
    "pytest>=8.0.0",
]
build = [
    "pyinstaller>=6.0.0",
]

[project.scripts]
seshat-tts = "seshat_tts.app:main"

[project.urls]
Homepage = "https://github.com/Scriptriva/seshat-tts"
Repository = "https://github.com/Scriptriva/seshat-tts"
Issues = "https://github.com/Scriptriva/seshat-tts/issues"
Support = "mailto:support@scriptriva.com"

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

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