fastapi>=0.110
uvicorn>=0.29
python-multipart>=0.0.9
obsws-python>=1.6

faster-whisper>=1.0   # transcription + karaoke captions (CPU works, GPU faster)
numpy>=1.24           # clock/glyph matching for game markers (faster-whisper pulls it too, but we import it directly)
# A current CA set, so HTTPS does not depend on when the machine last
# patched its root store. It arrives via httpx anyway; named here because
# clipshelf/net.py imports it directly, and a transitive dependency is not
# a promise. See net.py for why we trust this AND the OS store.
certifi>=2024.2

# desktop shell — app window + tray icon. Without them the app still runs
# and opens in your browser (also how LAN access works).
pywebview>=5.0
pystray>=0.19
pillow>=10.0
keyboard>=0.13; sys_platform == 'win32'   # global clip/chapter hotkeys
