# =====================================================
# ALwrity Podcast-Only Requirements
# Lean subset for podcast-only demo mode
# =====================================================

# Core Web Server
fastapi>=0.115.14
starlette>=0.40.0,<0.47.0
sse-starlette<3.0.0
uvicorn>=0.24.0
uvicorn[standard]>=0.24.0
gunicorn>=21.0.0

# Server utilities
python-multipart>=0.0.6
python-dotenv>=1.0.0
loguru>=0.7.2
tenacity>=8.2.3
pydantic>=2.5.2,<3.0.0
typing-extensions>=4.8.0
setuptools>=65.0.0

# Auth & Database
fastapi-clerk-auth>=0.0.7
sqlalchemy>=2.0.25

# Payment
stripe>=8.0.0

# HTTP clients
httpx>=0.28.1
aiohttp>=3.9.0
requests>=2.31.0

# AI - needed for podcast
openai>=1.3.0
google-genai>=1.0.0
exa-py==1.9.1

# Text processing (minimal)
markdown>=3.5.0
beautifulsoup4>=4.12.0

# Data processing (numpy needed for moviepy, pandas for usage tracking)
numpy>=1.24.0
pandas>=2.0.0

# Image/media for podcast
Pillow>=10.0.0
matplotlib>=3.7.0
huggingface_hub>=1.1.4

# TTS for podcast
gtts>=2.4.0
pyttsx3>=2.90

# Video composition
moviepy==2.1.2
imageio>=2.31.0
imageio-ffmpeg>=0.4.9

# Testing
pytest>=7.4.0
pytest-asyncio>=0.21.0

# Task scheduling
apscheduler>=3.10.0

# Utilities
redis>=5.0.0
schedule>=1.2.0
aiofiles>=23.2.0
psutil>=5.9.0

# Google APIs
google-api-python-client>=2.100.0
google-auth>=2.23.0
google-auth-oauthlib>=1.0.0

# Other utilities
python-dateutil>=2.8.0
jinja2>=3.1.0
