Fork to yt-mp3-ui
Signed-off-by: Julien Riou <julien@riou.xyz>
This commit is contained in:
parent
84a8e0faa7
commit
9c6360e9c4
10 changed files with 243 additions and 288 deletions
83
README.md
83
README.md
|
|
@ -1,51 +1,51 @@
|
|||
# yt-dlp Web UI
|
||||
# yt-mp3-ui
|
||||
|
||||
A beautiful, self-hosted web application for downloading YouTube (and 1000+ other sites) videos — powered by [yt-dlp](https://github.com/yt-dlp/yt-dlp).
|
||||
A self-hosted web app for downloading music as MP3 from YouTube, powered by [yt-dlp](https://github.com/yt-dlp/yt-dlp).
|
||||
|
||||

|
||||

|
||||

|
||||

|
||||
|
||||
---
|
||||
|
||||
## About this fork
|
||||
|
||||
This is a fork of [github.com/Samive/yt-dlp-web](https://github.com/Samive/yt-dlp-web). It changes the upstream video downloader into a focused music downloader. The differences from upstream:
|
||||
|
||||
- **Music only** — every download is extracted to 320K MP3 with metadata and an embedded thumbnail. The format selector is gone; there is nothing to choose.
|
||||
- **French interface** — the whole UI and its messages are in French.
|
||||
- **Light and dark mode** — a theme toggle in the header, defaulting to your operating system preference.
|
||||
- **Auto-updating yt-dlp** — the latest yt-dlp is pulled on container startup, so downloads keep working as sites change.
|
||||
|
||||
---
|
||||
|
||||
## Features
|
||||
|
||||
- Paste any YouTube (or supported site) URL and fetch video info instantly
|
||||
- Paste any YouTube (or supported site) URL and fetch track info instantly
|
||||
- View thumbnail, title, uploader, duration, views, likes, and upload date
|
||||
- Select from all available formats grouped by quality (Video+Audio, Video only, Audio only)
|
||||
- Highest quality format pre-selected automatically
|
||||
- One-click download to 320K MP3 with metadata and embedded cover art
|
||||
- Live download progress with percentage, speed, and ETA
|
||||
- Cancel download at any time
|
||||
- Clean dark UI with animated progress bar
|
||||
- Cancel a download at any time
|
||||
- Light and dark themes following your OS preference, with a manual toggle
|
||||
|
||||
---
|
||||
|
||||
## Quick Start with Docker
|
||||
|
||||
### Pull and run from Docker Hub
|
||||
## Quick Start with Docker Compose
|
||||
|
||||
```bash
|
||||
docker pull samive/yt-dlp-web:latest
|
||||
docker run -d -p 8000:8000 --name yt-dlp-web samive/yt-dlp-web:latest
|
||||
git clone https://git.riou.xyz/jriou/yt-mp3-ui.git
|
||||
cd yt-mp3-ui
|
||||
docker compose up -d --build
|
||||
```
|
||||
|
||||
Then open **http://localhost:8000** in your browser.
|
||||
|
||||
### Persist downloads to your machine
|
||||
Downloads are written to the `downloads` volume (see `docker-compose.yml`). yt-dlp is upgraded to the latest release each time the container starts.
|
||||
|
||||
### Stop / remove
|
||||
|
||||
```bash
|
||||
docker run -d \
|
||||
-p 8000:8000 \
|
||||
-v $(pwd)/downloads:/app/web/backend/downloads \
|
||||
--name yt-dlp-web \
|
||||
samive/yt-dlp-web:latest
|
||||
```
|
||||
|
||||
### Stop / remove the container
|
||||
|
||||
```bash
|
||||
docker stop yt-dlp-web
|
||||
docker rm yt-dlp-web
|
||||
docker compose down -v
|
||||
```
|
||||
|
||||
---
|
||||
|
|
@ -56,18 +56,12 @@ docker rm yt-dlp-web
|
|||
|
||||
- [Docker](https://docs.docker.com/get-docker/) installed
|
||||
|
||||
### Build the image
|
||||
### Build and run
|
||||
|
||||
```bash
|
||||
git clone https://github.com/samive/yt-dlp-web.git
|
||||
cd yt-dlp-web
|
||||
docker build -t yt-dlp-web .
|
||||
```
|
||||
|
||||
### Run the image
|
||||
|
||||
```bash
|
||||
docker run -d -p 8000:8000 --name yt-dlp-web yt-dlp-web
|
||||
docker build -t yt-mp3-ui .
|
||||
docker run -d -p 8000:8000 \
|
||||
--name yt-dlp-ui yt-dlp-ui
|
||||
```
|
||||
|
||||
Open **http://localhost:8000**.
|
||||
|
|
@ -93,15 +87,18 @@ python -m uvicorn web.backend.main:app --reload --port 8000
|
|||
|
||||
Open **http://localhost:8000**.
|
||||
|
||||
> Auto-update at startup is handled by the container entrypoint. When running the server directly, upgrade yt-dlp yourself with `pip install -U yt-dlp`.
|
||||
|
||||
---
|
||||
|
||||
## Usage Guide
|
||||
|
||||
1. **Paste a URL** — Paste any YouTube or supported site link into the input field and click **Fetch**
|
||||
2. **Review video info** — Thumbnail, title, uploader, duration, views, likes, and upload date are shown
|
||||
3. **Select a format** — Choose from the dropdown (highest quality is pre-selected)
|
||||
4. **Download** — Click the **Download** button and watch the live progress bar
|
||||
5. **Cancel** — Click **Cancel** at any time to stop the download
|
||||
1. **Paste a URL** — paste any YouTube or supported site link into the input field and click **Rechercher**
|
||||
2. **Review track info** — thumbnail, title, uploader, duration, views, likes, and upload date are shown
|
||||
3. **Download** — click **Télécharger** and watch the live progress bar. The file is saved as a 320K MP3
|
||||
4. **Cancel** — click **Annuler** at any time to stop the download
|
||||
|
||||
Use the sun/moon button in the header to switch between light and dark modes. Your choice is remembered.
|
||||
|
||||
### YouTube authentication (optional)
|
||||
|
||||
|
|
@ -111,8 +108,8 @@ Some videos require sign-in. Export your cookies using the [Get cookies.txt LOCA
|
|||
docker run -d \
|
||||
-p 8000:8000 \
|
||||
-v $(pwd)/cookies.txt:/app/web/backend/cookies.txt:ro \
|
||||
--name yt-dlp-web \
|
||||
samive/yt-dlp-web:latest
|
||||
--name yt-mp3-ui \
|
||||
yt-mp3-ui
|
||||
```
|
||||
|
||||
> **Note:** Using cookies with Chrome on Windows may cause issues due to DPAPI encryption. Firefox or Edge cookies work more reliably.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue