Skip to content

LNA-DEV/ytdlp-nfo-server

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Contributors Forks Stargazers Issues MIT License


Logo

ytdlp-nfo-server

A web server wrapping ytdlp-nfo with a queue-based job system, real-time progress streaming, and a built-in web UI.


Explore the Project »

Report Bug · Request Feature

Screenshot

Features

  • Web UI for submitting and monitoring downloads
  • Bulk import of up to 500 URLs at once
  • Configurable concurrent downloads with FIFO queue
  • Real-time progress streaming via Server-Sent Events
  • Automatic retries with exponential backoff
  • Job state persistence across restarts
  • Duplicate URL detection
  • Optional password protection

Project Structure

The server code lives in the server/ directory. Docker Compose files and the Dockerfile are also located there.

Usage

Docker Compose

services:
  ytdlp-nfo-server:
    image: ghcr.io/lna-dev/ytdlp-nfo-server:latest
    ports:
      - "8080:8080"
    volumes:
      - ./download:/downloads
      - ./data:/data
      - pip-cache:/root/.cache/pip
    environment:
      - PORT=8080
      - DOWNLOAD_DIR=/downloads
      - DATA_DIR=/data
      - PASSWORD=changeme
    restart: unless-stopped

volumes:
  pip-cache:
docker compose up -d

Environment Variables

Variable Default Description
PORT 8080 Server port
DOWNLOAD_DIR ./downloads Download destination
DATA_DIR Job state persistence directory
MAX_CONCURRENT 3 Max parallel downloads
MAX_RETRIES 3 Max retry attempts per job
YTDLP_CHANNEL stable yt-dlp version channel (stable, master, nightly)
PASSWORD Optional password to protect the web UI

License

MIT

About

A web server wrapping ytdlp-nfo with a queue-based job system, real-time progress streaming, and a built-in web UI.

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors