Skip to content

developedbyalex/basicYTDLGUI

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

47 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

basicYTDLGUI πŸŽ₯

GitHub stars GitHub forks GitHub issues Docker Build License

A modern, user-friendly web interface for downloading videos and audio from various platforms using yt-dlp.

Features β€’ Installation β€’ Usage β€’ Docker β€’ Contributing

image

✨ Features

  • 🎯 Simple Interface: Clean, modern design with dark glass theme
  • 🎬 Multiple Formats: Download as MP4 (video) or MP3 (audio)
  • πŸ“₯ Batch Downloads: Process multiple URLs simultaneously
  • πŸ“Š Progress Tracking: Real-time progress bars and status updates
  • 🎨 Metadata Support: Include video metadata, thumbnails, and comments
  • 🌐 Platform Support: Works with YouTube and many other platforms
  • πŸ“± Responsive Design: Fully functional on mobile devices
  • 🐳 Docker Support: Easy deployment with Docker

πŸš€ Installation

Prerequisites

Quick Start

# Clone the repository
git clone https://github.com/developedbyalex/basicYTDLGUI.git

# Navigate to project directory
cd basicYTDLGUI

# Install dependencies
npm install

# Start the server
npm start

Then open http://localhost:3000 in your browser.

🐳 Docker

Using Official Image

# Pull the official image
docker pull ghcr.io/developedbyalex/basicytdlgui:latest

# Run the container
docker run -d \
  --name basicytdlgui \
  -p 3000:3000 \
  -v $(pwd)/downloads:/usr/src/app/downloads \
  ghcr.io/developedbyalex/basicytdlgui:latest

Using Docker Compose (Recommended)

Create a docker-compose.yml file:

version: '3.8'
services:
  app:
    image: ghcr.io/developedbyalex/basicytdlgui:latest
    ports:
      - "3000:3000"
    volumes:
      - ./downloads:/usr/src/app/downloads
    restart: unless-stopped

Then run:

# Build and start containers
docker-compose up -d

# View logs
docker-compose logs -f

# Stop containers
docker-compose down

Manual Docker Build

Build from source if you want to customize the image:

# Build the image
docker build -t basicytdlgui .

# Run the container
docker run -d \
  --name basicytdlgui \
  -p 3000:3000 \
  -v $(pwd)/downloads:/usr/src/app/downloads \
  basicytdlgui

Docker Tips

  • The downloads directory is persisted through a volume mount
  • Access the web interface at http://localhost:3000
  • Use docker logs -f basicytdlgui to view real-time logs
  • Use docker stats basicytdlgui to monitor container resources
  • Set custom port: -p 8080:3000 (access on port 8080)
  • Set custom download directory: -v /path/to/downloads:/usr/src/app/downloads

πŸ“– Usage

  1. Enter one or more video URLs (one per line)
  2. Choose your preferred format (MP4/MP3)
  3. Configure download options:
    • Use video's title as filename
    • Include metadata (thumbnails, description)
    • Include comments
  4. Click Download and monitor progress

πŸ”§ Configuration

Environment Variables

Variable Description Default
PORT Server port 3000
DOWNLOAD_DIR Download directory ./downloads

Instagram Support

To download from Instagram:

  1. Install "Get cookies.txt" extension
  2. Log into Instagram
  3. Export cookies to cookies.txt
  4. Place in project root

🀝 Contributing

Contributions are welcome! Here's how you can help:

  1. Fork the repository
  2. Create a feature branch
  3. Commit your changes
  4. Push to your branch
  5. Open a pull request

Please ensure your PR adheres to the following:

  • Follow existing code style
  • Add tests if applicable
  • Update documentation as needed

πŸ“ License

This project is licensed under the MIT License - see the LICENSE file for details.

πŸ™ Acknowledgments


Made with ❀️ by developedbyalex

⭐ Star us on GitHub β€” it motivates us a lot!

About

A lightweight web interface for yt-dlp, featuring a clean dark theme design and real-time download progress tracking. Built with NodeJS, HTML, CSS and JS.

Resources

License

Stars

43 stars

Watchers

2 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors