Skip to content

CoffeePatch/TweetDownload

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

X (Twitter) Video & Media Downloader

A lightweight, high-performance browser extension that integrates seamlessly into X (formerly Twitter) to add a download button under images, videos, and GIFs, letting you download them in the highest available quality with a single click.


📁 Repository Structure

We have restructured the repository to separate development source code from the final packaged extensions:

tweet-downloader/
├── src/                  # Source code (Single source of truth)
│   ├── icons/            # Extension icons (16px, 32px, 48px, 128px)
│   ├── background.js     # Shared background script (handles file downloading)
│   ├── inject.js         # Injector script (runs at document_start)
│   ├── content.js        # Main UI injector and X API response observer
│   └── content.css       # Download button and loader styling
├── manifests/            # Browser-specific configurations
│   ├── manifest-chrome.json
│   └── manifest-firefox.json
├── dist/                 # Generated outputs (Created by build.py)
│   ├── chrome/           # Unpacked Chrome extension folder
│   ├── firefox/          # Unpacked Firefox extension folder
│   ├── tweet-downloader-chrome.zip  # Packaged Chrome package
│   └── tweet-downloader-firefox.zip # Packaged Firefox package
└── build.py              # Cross-platform build & packaging script

⚡ Quick Download Links

If you just want to grab the compiled extensions:

  • 📥 Chrome/Edge/Brave Package: tweet-downloader-chrome.zip
  • 📥 Firefox/Floorp Package: tweet-downloader-firefox.zip

🛠️ Installation Instructions

🌐 Google Chrome, Brave, Microsoft Edge, and Opera

You can install either the unpacked folder (recommended for developers) or the ZIP archive:

Option A: Load the Unpacked Folder (Recommended)

  1. Extract the downloaded ZIP file if you are using the ZIP, or locate the dist/chrome/ folder.
  2. Open your browser and navigate to the Extensions page:
    • Chrome/Brave: chrome://extensions/
    • Edge: edge://extensions/
  3. Enable Developer mode (usually a toggle in the top-right corner).
  4. Click the Load unpacked button in the top-left.
  5. Select the dist/chrome/ directory.

🦊 Mozilla Firefox and Floorp

Since standard versions of Firefox block the permanent installation of unsigned developer extensions, you must load it as a temporary extension:

  1. Open Firefox or Floorp and navigate to: about:debugging
  2. Click This Firefox (or This Floorp) on the left sidebar.
  3. Click the Load Temporary Add-on... button.
  4. Select either:
    • The manifest.json file inside the dist/firefox/ directory.
    • Or the packaged tweet-downloader-firefox.zip file.

(Note: Temporary extensions are automatically unloaded when you close Firefox.)


🏗️ Development & Packaging

If you make modifications to the extension source code inside the src/ directory, you can build and package both extensions by running the build script:

python build.py

This script will:

  1. Clean the dist/ directory.
  2. Copy files from src/ to both Chrome and Firefox build folders.
  3. Apply the correct manifest (manifest-chrome.json and manifest-firefox.json).
  4. Generate updated, browser-compatible ZIP packages in the dist/ folder using the correct ZIP compression standards.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors