Skip to content
This repository has been archived by the owner on Dec 24, 2024. It is now read-only.

Latest commit

 

History

History
46 lines (31 loc) · 927 Bytes

README.md

File metadata and controls

46 lines (31 loc) · 927 Bytes

Yanic

yt-dlp HTTP server

HTTP protocol

Why

Spawning a new Python interpreter for each download is slow

Dev Env

brew install go-task pipx bun
pipx install poetry

Development

task poetry
task start

Testing

Uses ResponsibleAPI to verify the server

task tests

Deployment

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.