Skip to content

ocodo/uvxytdlp

Repository files navigation

uvxytdlp-ui

Download and playback web video and audio locally, powered by yt-dlp, uvx with Vite, React, Tailwind CSS, Shadcn/ui and FastAPI providing the basis for the WebUI and API Service.

screenshots

Light mode

Dark mode

Search downloads

Safe delete with long press

Run

Using Docker or Podman...

sudo docker run -d \
  -p 8080:80 \
  -v /path/to/your/downloads:/ytdlp-downloads \
  --name uvxytdlp-ui-container \
  ghcr.io/ocodo/uvxytdlp/uvxytdlp-ui:ineffable-idiocy

Then go to http://localhost:8080


Local Dev version

Run

Front End

run from project root:

pnpm install
vite [--port <your port>] [--host <0.0.0.0>]

Back End

The backend uses uvx to fetch a fresh version of yt-dlp daily.

Install uv (to get uvx)

curl -LsSf https://astral.sh/uv/install.sh | sh
cd apiserver

Copy config.example.toml to config.toml and edit it to set the download folder.

uv venv
source .venv/bin/activate
fastapi dev

See fastapi --help for other options.

Running in Docker/Podman

To build the container:

docker build -t uvxytdlp-ui .

(for Podman it's the same, replace docker with podman)

To run with uvxytdlp-ui note downloads in the container are at is /ytdlp-downloads/. use -v your_dir:/ytdlp-downloads in you podman/docker run command: e.g.:

docker run -d \
  -p 8080:80 \
  -v $local_download_dir:/ytdlp-downloads \
  --name uvxytdlp-ui-container \
  docker.io/library/uvxytdlp-ui

Start/Stop docker container

docker start uvxytdlp-ui-container

or

docker stop uvxytdlp-ui-container

About

uvx ytdlp ui for building your local media archive from all the web video and audio

Topics

Resources

Stars

Watchers

Forks

Packages