A simple YouTube download web GUI | Frontend Repo | Backend Repo
A basic YouTube viderooo downloader web GUI that runs in a docker container
There aren't really any self-hosted YouTube video downloader web applications that I was able to find on Github. I only searched for a few minutes though, so I'm sure there are some out there, maybe.
- Query: Query a video via a YouTube URL and return information about the video.
- Download: Download a video to either the server or the server and the browser. Allow choosing the quality.
- Query: Query a video via a YouTube URL and return information about the video.
- Download:
Download a video to either the server or the server and the browser. Allows for choosing the quality.
None of the available stream resolutions were progressive except for 360p. Bummer.
- Download video stream at the requested resolution
- Download the highest quality audio stream
- Stitch these friends together using ffmpeg
- Leave the video on the server in the
./DownTheTube-backend-python/downloaded-videosfolder - Pass it back to the browser if requested
Clone the docker compose repo
git clone https://github.com/sam-morin/DownTheTube-docker-compose.git && cd DownTheTube-docker-composeClone the frontend and backend
git clone https://github.com/sam-morin/DownTheTube.git && git clone https://github.com/sam-morin/DownTheTube-backend-python.gitIf you plan to access DownTheTube from any other machine on your network you must set the server IP!
Modify the variable in ./DownTheTube/.env to reflect the IP of the machine that this all will be running on:
VITE_BACKEND_URL=http://localhost:5001
# Change this to the IP of your server! Leave :5001Modify this part in ./docker-compose.yml file:
...
frontend:
build: ./DownTheTube
ports:
- "8001:80"
...Replace 8001 with the port you'd like to run it on
(but leave port 80 on the right side of the colon, and don't modify the backend ports)
docker compose up -dUnless you changed it, the web GUI will run on http://localhost:8001