# Video Surveillance Portal — requirements

# Core
fastapi>=0.115,<1.0
uvicorn[standard]>=0.30,<1.0
pydantic>=2.0,<3.0
pydantic-settings>=2.0,<3.0

# ONVIF
onvif-zeep>=0.2.11,<1.0

# Redis
redis>=5.0,<6.0

# Database
sqlalchemy>=2.0,<3.0
aiosqlite>=0.20,<1.0

# HTTP client (ANPR, camera snapshots)
httpx>=0.27,<1.0

# Image processing
Pillow>=10.0,<12.0
opencv-python-headless>=4.9,<5.0

# ANPR
requests>=2.31,<3.0

# Alerts
# email via stdlib smtplib (no extra deps)
# twilio
twilio>=9.0,<10.0

# Recording (subprocess ffmpeg)

# Dev
ruff>=0.5,<1.0
mypy>=1.10,<2.0
pytest>=8.0,<9.0
pytest-asyncio>=0.24,<1.0
httpx-ws>=0.5,<1.0  # for testing WebSocket
