# LEDMatrix Web Interface Dependencies # Compatible with Python 3.10, 3.11, 3.12, and 3.13 # Tested on Raspbian OS 12 (Bookworm) and 13 (Trixie) # Web framework flask>=3.0.0,<4.0.0 werkzeug>=3.0.0,<4.0.0 flask-wtf>=1.2.0 # CSRF protection (optional for local-only, but recommended) flask-limiter>=3.5.0 # Rate limiting (prevent accidental abuse) # WebSocket support for plugins # Note: Web interface uses Server-Sent Events (SSE) for real-time updates, not WebSockets # However, plugins may need websocket support to connect to external services # (e.g., music plugin connecting to YTM Companion server via Socket.IO) # These packages are required for plugin compatibility python-socketio>=5.11.0,<6.0.0 python-engineio>=4.9.0,<5.0.0 websockets>=12.0,<14.0 websocket-client>=1.8.0,<2.0.0 # Image processing Pillow>=10.4.0,<12.0.0 # System monitoring psutil>=6.0.0,<7.0.0 # Font rendering freetype-py>=2.5.0,<3.0.0 # Numerical operations # NumPy 1.24+ required for Python 3.12+ compatibility (compatible with 2.x) numpy>=1.24.0 # HTTP requests requests>=2.32.0,<3.0.0 # Date/time utilities python-dateutil>=2.9.0,<3.0.0 # Timezone handling (must match main requirements) pytz>=2024.2,<2025.0 timezonefinder>=6.5.0,<7.0.0 geopy>=2.4.1,<3.0.0 # Google API integration (must match main requirements) google-auth-oauthlib>=1.2.0,<2.0.0 google-auth-httplib2>=0.2.0,<1.0.0 google-api-python-client>=2.147.0,<3.0.0 # Spotify integration (must match main requirements) spotipy>=2.24.0,<3.0.0 # Text processing (must match main requirements) unidecode>=1.3.8,<2.0.0 # Calendar integration (must match main requirements) icalevents>=0.1.27,<1.0.0