DeskLock gives the Tatlock butler a face and voice on a Waveshare ESP32-P4-WIFI6-Touch-LCD-3.4C round display in the living room. - firmware/: ESP-IDF project targeting esp32p4 with the Waveshare XC BSP - gateway/: FastAPI voice bridge (faster-whisper STT, Tatlock chat, Piper TTS) - docs/architecture.md: component design and device<->gateway WS protocol Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
39 lines
736 B
TOML
39 lines
736 B
TOML
[project]
|
|
name = "desklock-gateway"
|
|
version = "0.1.0"
|
|
description = "Voice gateway bridging the DeskLock device to the Tatlock butler (STT/chat/TTS)"
|
|
requires-python = ">=3.11"
|
|
dependencies = [
|
|
"fastapi>=0.115",
|
|
"uvicorn[standard]>=0.30",
|
|
"httpx>=0.27",
|
|
"pydantic-settings>=2.4",
|
|
]
|
|
|
|
[project.optional-dependencies]
|
|
speech = [
|
|
"faster-whisper>=1.0",
|
|
"piper-tts>=1.2",
|
|
]
|
|
dev = [
|
|
"pytest>=8.0",
|
|
"pytest-asyncio>=0.24",
|
|
"ruff>=0.6",
|
|
"mypy>=1.11",
|
|
]
|
|
|
|
[build-system]
|
|
requires = ["setuptools>=68"]
|
|
build-backend = "setuptools.build_meta"
|
|
|
|
[tool.setuptools.packages.find]
|
|
where = ["src"]
|
|
|
|
[tool.ruff]
|
|
line-length = 100
|
|
src = ["src"]
|
|
|
|
[tool.pytest.ini_options]
|
|
asyncio_mode = "auto"
|
|
testpaths = ["tests"]
|