Skip to content

debojitsantra/instad

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

75 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Backlog Tracker Logo

Instad is a Python-based yt-dlp GUI for fetching videos, playlists, clips, posts, reels, and audio from platforms supported by yt-dlp.

Legal Copyright Disclaimer

Caution

Please be aware that videos on platforms like YouTube may be protected by copyright (DMCA). The creator of Instad does not support, and cannot be held accountable for, any use of this application that infringes upon these legal protections.


Features

  • Download any URL supported by yt-dlp
  • add multiple urls in queue
  • Download playlists when present
  • Choose between quality
  • Paste cookies in Settings for age-restricted, private, or signed-in downloads
  • Accepts Netscape cookies.txt exports or a raw browser Cookie: header
  • Modern GUI built with customtkinter
  • Automatic fallback to TUI mode if no graphical display is available

Requirements

  • Python 3.13+
  • ffmpeg installed and available in PATH
  • Deno installed and available in PATH (for YouTube signature solving)
  • Dependencies listed in requirements.txt

Installation

git clone https://github.com/debojitsantra/instad.git
cd instad
python -m venv venv
# Windows
venv\Scripts\activate
# Linux
source venv/bin/activate

pip install -r requirements.txt

Install ffmpeg

Windows:

winget install Gyan.FFmpeg

Linux/WSL:

# Debian
sudo apt install ffmpeg -y
# Arch
sudo pacman -S ffmpeg
# Fedora
sudo dnf install ffmpeg

Install Deno

Windows

irm https://deno.land/install.ps1 | iex

Linux/WSL

curl -fsSL https://deno.land/install.sh | sh
Linux Requirements

If the app fails to start with a Fontconfig or font-related error, install:

## Debian
sudo apt install -y fontconfig fonts-dejavu-core fonts-liberation2
## Arch
sudo pacman -S fontconfig ttf-dejavu ttf-liberation
## Fedora
sudo dnf install fontconfig dejavu-sans-fonts liberation-fonts

(Required for some Linux distributions and WSL setups.)


Screenshots

Screenshot 1 Screenshot 2 Screenshot 3 Screenshot 4 Screenshot 5

Usage

python instad.py

Cookies

Use Settings -> Cookies for videos that require a signed-in account, such as age-restricted or private content.

Paste either:

  • A Netscape cookies.txt export.
  • A raw browser Cookie: header copied from a signed-in request.

Refresh the pasted cookies if a download fails with an authentication or age-restriction error.


Pre-built Binaries

Download the latest release for your platform from the Releases page:


Building from Source

pip install pyinstaller

# Windows
pyinstaller --noconfirm --onefile --noconsole --icon "assets/icon.ico" --add-data "assets;assets" --name instad instad.py

# Linux
pyinstaller --onefile --add-data "assets:assets" instad.py

Output binary will be in dist/. For a custom Windows executable icon, convert assets/icon.svg to .ico and pass it with --icon path\to\icon.ico.


Releases (CI/CD)

Releases are built automatically via GitHub Actions on every version tag push:

git tag v1.2.0.1
git push origin v1.2.0.1

This triggers automated Windows (.exe) and Linux binary builds, published to GitHub Releases.


Supported Platforms

Site Type
Any yt-dlp supported site Video / Audio / Playlists / Metadata supported by that extractor

About

Instad is a Python-based media downloader that allows you to quickly fetch photos, videos, and audio from multiple platforms.

Topics

Resources

License

Stars

Watchers

Forks

Contributors