# Skymarshal - Bluesky Content Management Tool
# Core dependencies for running the application

# AT Protocol client library for Bluesky
# Upper bound prevents auto-pulling a 0.1+ release that may break the API
# surface or transitively bump httpx past 0.28.
atproto>=0.0.46,<0.1

# Rich terminal interface library
rich>=13.0.0

# --- Unified backend (Flask + SocketIO) ---
flask>=3.0.0,<4.0
flask-socketio>=5.3.0
flask-cors>=4.0.0
werkzeug>=3.0.0,<4.0

# Async HTTP client for AT Protocol API calls
# atproto historically requires httpx<0.28; pinning here too so a fresh
# install never ends up with the broken combination.
httpx>=0.27.0,<0.28.0
aiohttp>=3.9.0

# WebSocket client for Jetstream firehose (Phase 4)
# Using websocket-client (sync) for eventlet compatibility — per second opinion consensus
websocket-client>=1.6.0

# Graph analytics for network visualization (Phase 3)
networkx>=3.0

# Sentiment analysis — vaderSentiment (lightweight, social media optimized)
vaderSentiment>=3.3.2

# Async event support
eventlet>=0.35.0

# Development dependencies (optional - install with pip install -r requirements-dev.txt)
# pytest>=7.0.0
# pytest-cov>=4.0.0
# black>=23.0.0
# isort>=5.12.0
# flake8>=6.0.0
# mypy>=1.0.0
