soulsync/requirements.txt
Antti Kettunen 14bc9b6fad Introduce Gunicorn production runner
Switch the web UI from Werkzeug's built-in server to Gunicorn for a more stable production deployment path.

Keep a separate dev config so local runs still reload quickly, while the production path uses a dedicated WSGI entrypoint and cleaner startup behavior.

The main motivation is to reduce the websocket teardown noise and make the server behavior more predictable under the app's mostly background-driven workload.
2026-04-18 19:21:53 +03:00

48 lines
790 B
Text

# SoulSync requirements
# Web application dependencies only
# Core web framework
Flask>=3.0.0
Flask-Limiter>=3.5.0
# Music service APIs
spotipy>=2.23.0
PlexAPI>=4.17.0
# HTTP and async support
requests>=2.31.0
aiohttp>=3.9.0
# Security and encryption
cryptography>=41.0.0
# Media metadata handling
mutagen>=1.47.0
Pillow>=10.0.0
# Text processing
unidecode>=1.3.8
beautifulsoup4>=4.12.0
# System monitoring
psutil>=6.0.0
# YouTube support
yt-dlp>=2024.12.13
# Lyrics support
lrclibapi>=0.3.1
# Audio fingerprinting for download verification
pyacoustid>=1.3.0
# WebSocket client for Hydrabase connection
websocket-client>=1.7.0
# Tidal download support
tidalapi>=0.7.6
# WebSocket server for real-time UI updates
flask-socketio>=5.3.0
gunicorn>=25.3.0
simple-websocket>=1.1.0