explaingit

iawia002/lux

31,364GoAudience · developerComplexity · 2/5MaintainedLicenseSetup · moderate

TLDR

Command-line tool to download videos from websites by pasting a URL. Supports playlists, quality selection, and resume on interruption.

Mindmap

mindmap
  root((Lux))
    What it does
      Download videos
      Extract streams
      Merge audio video
      Resume downloads
    Supported sites
      YouTube
      Bilibili
      iQIYI
      Mainstream platforms
    Features
      Quality selection
      Playlist support
      Multiple URLs
      Proxy config
    How to use
      Paste URL
      Choose quality
      Download starts
      View progress

Things people build with this

USE CASE 1

Download YouTube videos or other streaming content for offline viewing without ads.

USE CASE 2

Archive entire playlists from video platforms in bulk with a single command.

USE CASE 3

Extract and save videos from Chinese platforms like Bilibili or iQIYI that may not be accessible later.

USE CASE 4

Resume interrupted downloads without starting over from the beginning.

Tech stack

GoFFmpegCommand-line

Getting it running

Difficulty · moderate Time to first run · 30min

FFmpeg must be installed and in PATH; Go build or binary download required.

Use freely for any purpose, including commercial use, as long as you keep the copyright notice and license text.

In plain English

Lux is a command-line video downloader written in Go that lets you save videos from many popular websites by simply passing a URL. The problem it solves is straightforward: video streaming sites do not provide a built-in download button, so if you want to save a video for offline viewing or archival, you need a tool that can extract the actual video stream from the page and download it to your disk. You run Lux from a terminal, give it a URL, and it fetches the video in the best available quality, showing you a progress bar as it downloads. You can also list all available quality options first (like 1080p, 720p, 480p) and then choose a specific one. It supports downloading entire playlists with a single command and can handle multiple URLs at once. If a download is interrupted, it can resume from where it left off. Under the hood, Lux parses the web page or video platform's API to extract the direct media stream URLs, then downloads the file segments. For videos that come in separate audio and video streams (common on platforms like YouTube), it uses FFmpeg, a separate, widely-used media processing tool, to merge them into a single final file. The tool supports a wide range of sites, with notable coverage of Chinese video platforms like Bilibili, iQIYI, and QQ Video, as well as more mainstream sites. It also supports proxy configuration and cookie-based authentication for accessing content that requires login. You would use Lux whenever you need a fast, no-frills command-line tool for video downloading on Windows, macOS, or Linux. It is written in Go and distributed as a single binary, installable via Homebrew, Scoop, or by downloading a prebuilt release.

Copy-paste prompts

Prompt 1
How do I install and use Lux to download a video from YouTube?
Prompt 2
Show me how to list all available quality options for a video before downloading with Lux.
Prompt 3
How do I download an entire playlist using Lux from a single URL?
Prompt 4
Can I use Lux to download videos that require login? How do I set up authentication?
Prompt 5
What do I do if my Lux download gets interrupted, can I resume it?
Open on GitHub → Explain another repo

Generated 2026-05-18 · Model: sonnet-4-6 · Verify against the repo before relying on details.