Flask + yt-dlp как библиотека, прогресс через SSE, фронтенд — один самодостаточный HTML без сборки. Приватность: сервер не хранит ничего. Настройки и история живут в localStorage браузера; файл удаляется с диска после выдачи (с grace- периодом, чтобы работала докачка по Range); URL и IP не пишутся в логи. Безопасность публичного сервиса: только http/https схемы, опции yt-dlp не собираются из пользовательской строки, format_id проходит строгий regex без синтаксиса селекторов, отдача файла с проверкой realpath, лимиты на размер/длительность/параллелизм/диск и rate limit по IP. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01AwY2Cg54RK7WZdvMaLV5Di
5 lines
78 B
Text
5 lines
78 B
Text
Flask==3.1.3
|
|
gunicorn==26.2.0
|
|
Jinja2==3.1.6
|
|
Werkzeug==3.1.8
|
|
yt-dlp==2026.8.19
|