yt-dlp HTTP server
Spawning a new Python interpreter for each download is slow
brew install go-task pipx bun
pipx install poetry
task poetry
task start
Uses ResponsibleAPI to verify the server
task tests
Uses shiv to build a zipapp.
Modify --platform manylinux2014_x86_64 --python-version 310
to your needs in the Taskfile
task build
# rsync yanic.pyz to server
PORT=8006 ./yanic.pyz
Yanic is leaking memory, and is killed every N requests. See Uvicorn --limit-max-requests. Use systemd or similar to restart it.