vidcore
v1.1.0
Published
Simple command-line video downloader for YouTube and other platforms
Maintainers
Readme
VidCore CLI - Simple Video Downloader
A command-line tool for downloading videos from YouTube and other platforms.
Installation
npm install -g vidcoreUsage
Interactive Mode (Recommended)
vidcoreThis will prompt you to enter:
- Video URL
- Format (mp4 or mp3)
- Quality (for videos)
- Output directory
Command Line Mode
# Basic download
vidcore "https://www.youtube.com/watch?v=dQw4w9WgXcQ"
# Specify quality and format
vidcore "https://youtu.be/dQw4w9WgXcQ" --quality 720p --format mp4
# Download audio only
vidcore "https://youtu.be/dQw4w9WgXcQ" --format mp3
# Custom output directory
vidcore "https://youtu.be/dQw4w9WgXcQ" --output ./my-videos
# List available formats
vidcore list-formats "https://youtu.be/dQw4w9WgXcQ"Options
| Option | Short | Description | Default |
|--------|-------|-------------|---------|
| --quality | -q | Video quality (best, 1080p, 720p, 480p, 360p) | 720p |
| --format | -f | Output format (mp4) | mp4 |
| --output | -o | Output directory | ./downloads |
| --help | -h | Show help | |
| --version | -V | Show version | |
Interactive Mode Walkthrough
Run VidCore without arguments:
vidcoreEnter the video URL when prompted:
🔗 Enter the video URL: https://youtu.be/dQw4w9WgXcQSelect format:
Available formats: 1. mp4 (Video) 2. mp3 (Audio) 📁 Select format (1 for mp4, 2 for mp3): 1Select quality (for video format):
Available qualities: 1. best 2. 1080p 3. 720p 4. 480p 5. 360p 📺 Select quality (1-5): 3Enter output path:
💾 Enter output path (default: ./downloads):Confirm download:
🚀 Start download? (y/n): y
Examples
# Download in highest quality
vidcore "https://youtu.be/dQw4w9WgXcQ" -q best
# Download in 1080p
vidcore "https://youtu.be/dQw4w9WgXcQ" -q 1080p
# Download to specific folder
vidcore "https://youtu.be/dQw4w9WgXcQ" -o ~/Downloads/videos
# Check available formats first
vidcore list-formats "https://youtu.be/dQw4w9WgXcQ"Supported Platforms
- YouTube (youtube.com, youtu.be)
- Facebook (facebook.com, fb.watch)
- Reddit (reddit.com)
- Instagram (instagram.com)
- TikTok (tiktok.com)
- Twitter/X (twitter.com, x.com)
Important Limitations
Image/GIF Files
- VidCore only downloads videos, not images or GIFs
- If you try to download an image/GIF URL, you'll get an error
- Make sure you're using a video URL, not an image URL
How It Works
VidCore CLI uses yt-dlp to extract video streams directly from various platforms:
- Direct Download: Downloads videos directly from platform servers
- Multiple Formats: Supports various quality options
- Progress Tracking: Shows real-time download progress
- Metadata Extraction: Retrieves video title, duration, and other information
- Automatic Cleanup: Removes temporary files after download completion
Automatic Cleanup
VidCore automatically cleans up temporary files created during the download process:
- Partial download files (.part)
- Temporary metadata files
- Cache files
- Fragment files
- Platform-specific temporary files (Facebook, Instagram, TikTok, Twitter/X, Reddit)
This ensures your filesystem stays clean and only contains the final downloaded videos. The cleanup functionality has been enhanced to properly handle duplicate files across all supported platforms, ensuring that only the final downloaded video file is preserved.
Audio Conversion
To convert videos to MP3 format, you need to install FFmpeg:
Windows
# Using Chocolatey
choco install ffmpeg
# Using Scoop
scoop install ffmpegmacOS
# Using Homebrew
brew install ffmpegLinux (Ubuntu/Debian)
sudo apt update
sudo apt install ffmpegAfter installing FFmpeg, you can convert MP4 files to MP3:
ffmpeg -i input.mp4 -q:a 0 -map a output.mp3Troubleshooting
Video Not Available
- The video might be private or deleted
- Try a different video URL
- Some videos have regional restrictions
- Age-restricted videos require authentication
Download Fails
- Check your internet connection
- Try again in a few minutes (platforms update frequently)
- Use
list-formatsto see available options - Some videos require login or have age restrictions
Installation Issues
# Clear npm cache
npm cache clean --force
# Install with verbose logging
npm install -g vidcore --verbosePlatform-Specific Issues
Facebook Videos
- Try using different URL formats:
https://www.facebook.com/watch/?v=VIDEO_IDhttps://fb.watch/SHORT_CODE/
- Some videos require Facebook login
- Update yt-dlp regularly:
pip install -U yt-dlp - Use direct video URLs instead of share links when possible
Reddit Videos
- Make sure the URL points to a video, not an image/GIF
- Remove tracking parameters from URLs
- Some Reddit videos may require login
- Update yt-dlp for the latest platform support
YouTube Videos
- Remove tracking parameters from URLs
- Some videos may be region-restricted
- Age-restricted content may require authentication
Development
# Clone and install dependencies
git clone https://github.com/your-username/vidcore-cli
cd vidcore-cli
npm install
# Install yt-dlp
pip install yt-dlp
# Test locally
node bin/vidcore.js "https://youtu.be/dQw4w9WgXcQ"
# Link for global testing
npm linkLicense
MIT License - see LICENSE file for details.
Disclaimer
This tool is for personal use only. Please:
- Respect platform terms of service
- Comply with copyright laws
- Only download content you have rights to access
- Do not use for commercial purposes without permission
