Download images, GIFs, videos, and voice messages on the Telegram webapp from private channels that disable downloading and restrict saving content
# Telegram Media Downloader
A powerful userscript that enables downloading of images, GIFs, videos, and voice messages from Telegram Web, even from private channels that restrict content saving.
## Features
- 🎥 **Video Downloads**: Download videos from channels that disable downloading
- 🎵 **Audio Downloads**: Save voice messages and audio files
- 🖼️ **Image Downloads**: Download images and GIFs
- ⏸️ **Pause/Resume Controls**: Full control over download progress with pause and resume functionality
- 📊 **Progress Tracking**: Modern progress bars showing download status with percentage
- 📁 **File System Integration**: Uses native file picker when available for direct saving
- 🎨 **Modern UI**: Clean, minimal progress cards with smooth animations
- 🔄 **Chunked Downloads**: Efficient downloading with range requests for large files
- 📱 **Multi-Platform Support**: Works on all Telegram Web versions (webk, webz, weba)
## How It Works
The script adds download buttons to Telegram's interface where native download options are missing or disabled. It uses range requests to download files in chunks, allowing for pause/resume functionality and better handling of large files. The progress is displayed in elegant cards at the bottom-right corner of the screen.
## Installation
1. Install [Tampermonkey](https://www.tampermonkey.net/) or a similar userscript manager
2. Install the script from [Greasy Fork](https://greasyfork.org/en/scripts/551447-telegram-media-downloader)
3. Visit Telegram Web and the download buttons will appear automatically
## Usage
- **Videos**: Click the download button that appears in video controls or media viewer
- **Images**: Click the download button in the media viewer
- **Voice Messages**: Click the download button that appears with pinned audio
- **Pause/Resume**: Use the pause button in the progress card to pause downloads
- **Cancel**: Click the X button to cancel a download
## Compatibility
- Works on all Telegram Web domains (web.telegram.org, webk.telegram.org, webz.telegram.org)
- Compatible with Chrome, Firefox, Edge, and other modern browsers
- Supports both regular and private channels
## Technical Details
- Uses File System Access API when available for direct file saving
- Falls back to blob-based downloads for unsupported browsers
- Implements chunked downloading with range requests
- Maintains download state across page navigation
- Automatically detects file types and applies appropriate download methods
## License
GNU GPLv3 - See script header for details