Skip to content

listenbox/yanic

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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.

Releases

No releases published

Packages

No packages published