A sleek, modern GUI application for managing and organizing gallery-dl download links with custom categorization.
If you are a user who has used gallery-dl extensively, you must already be knowing the extensive options gallery-dl offers such as -d, -D, --download-archive, -I ,config files, and much more, etc..
Initially I created this program for myself, in accordance to my own usage of gallery-dl and my folder structures for archiving media but I decided to upload it to github so others can make use of this for their own systems and data hoarding/archiving workflows
-
With gallery-dl when you download a artists entire media, the entire folder for that artist gets created along with the platform you downloaded (default configuration essentially)
-
This program is for mainly those with a lot of complicated folder structures and organizations and those who extensively use the -I tag which lets you download links from a .txt file and comments out already downloaded links.
Important
- Example: Suppose you have a certain character or certain types of images you like and the images you are downloading are from many different artists, gallery-dl offers no inbuilt way to organize this
- so the best method is to create a folder, create a .txt file in that folder and paste all the links of that certain character, or the images you want to download to one folder,
- Suppose you want to revisit and add more links to that file, it becomes tedious to open the .txt file, add the links, again use gallery-dl -D -I with the correct paths to download new images, hence why I made this program which can easily save all your paths and text files along with folders, so you can just easily add your links and downloads without having to go through the entire process again
Note
- I'am also releasing more of my gallery-dl/data hoarding workflow tools that i developed for my own use and will also include a guide on how to make use of them for a faster, more efficient workflow especially with huge media folders and complicated folder structures/organization.
- I will update the links here when they are uploaded to github
- Modern Fluent Dark UI: Beautiful, futuristic interface with smooth hover effects
- Custom Categories: Create unlimited custom download buttons for different collections
- Persistent Storage: All buttons and configurations saved in JSON files
- Smart Auto-Downloads: Automatically triggers gallery-dl when 5+ links are accumulated
- Dual-Action Buttons: Save & Auto-download OR Save Only (manual mode)
- Overflow Management: Paginated view for 35+ buttons
- First-Time Setup Wizard: Easy guided configuration on first launch
- No Dependencies: Only uses Python's standard library (tkinter)
-
Download gallery-dl
- Get the latest
gallery-dl.exefrom gallery-dl releases - Place it in a dedicated folder (e.g.,
C:\gallery-dl\)
- Get the latest
-
Clone this repository
git clone https://github.com/Thunderz-z/GUI_downloader_gallery-dl.git cd GUI_downloader_gallery-dl -
Run the application
python main.py
-
Follow the Setup Wizard
- On first launch, a setup wizard will guide you through configuration
- Point it to your gallery-dl.exe directory
- Optionally create your first download category
That's it! See INSTALLATION.md for detailed setup instructions.
- Examples of how the GUI looks like, for the main window, you may add any buttons and categories/folders you want, What is shown is just an example. All organization is upto you and how you want it to suit your workflow.
- Copy links from your browser (one per line)
- Paste them into the "LINKS INPUT" text box
- Click a category button:
- πΎ Save & Auto: Saves links and auto-starts download if β₯5 links
- π Save Only: Saves links without downloading (manual mode)
- Click "+ Add New Button" at the bottom
- Fill in the form:
- Button Label: Display name (e.g., "Twitter Art")
- Links File Path: Where to store links (.txt file)
- Output Directory: Where to save downloads
- Click "Add Button"
- Links are automatically tracked in .txt files
- Downloaded links are marked with
#by gallery-dl - Downloads start automatically in auto-mode when 5+ undownloaded links exist
- Manual mode lets you collect links without auto-starting downloads
Main Window:
- Header with title and instructions
- Text input area for pasting links
- Grid of custom category buttons (up to 35 visible)
- Add/Delete button controls
Dual-Action Buttons:
βββββββββββββββββββββββ
β Category Name β
ββββββββββββ¬βββββββββββ€
βπΎ Save & βπ Save β
β Auto β Only β
ββββββββββββ΄βββββββββββ
Overflow Window:
- Opens when you have 35+ buttons
- Paginated view (30 buttons per page)
- Previous/Next navigation
GUI_downloader_gallery-dl/
β
βββ main.py # Application entry point
βββ config.json # App configuration (auto-generated)
βββ custom_buttons.json # Button definitions (auto-generated)
βββ config.json.example # Configuration template
βββ custom_buttons.json.example # Button template
β
βββ README.md # This file
βββ INSTALLATION.md # Detailed installation guide
β
βββ src/ # Modular source code
βββ core/ # Business logic
β βββ config.py # Configuration management
β βββ file_manager.py # File operations
β βββ gallery_dl.py # Gallery-dl integration
β
βββ ui/ # User interface
β βββ main_window.py # Main application window
β βββ download_button.py # Custom button widget
β βββ overflow_window.py # Pagination window
β βββ dialogs.py # Add/Delete dialogs
β βββ setup_wizard.py # First-time setup
β
βββ utils/ # Utilities
βββ theme.py # Theme constants
βββ ui_helpers.py # UI utility functions
Configuration is automatically managed through JSON files:
Stores the gallery-dl.exe directory path.
Stores all your category buttons and their associated paths.
Note: These files are created automatically by the setup wizard and are in .gitignore to protect your personal paths.
Modern Fluent Design inspired dark theme:
- Primary Background:
#1a1a1a- Deep black - Secondary Background:
#252525- Cards and surfaces - Accent:
#0078d4- Azure blue - Text:
#ffffff/#b3b3b3- Primary/Secondary
- Verify the path in
config.jsonpoints to the folder containinggallery-dl.exe - Download gallery-dl from official releases
- Use the "+ Add New Button" feature to create your first category
- Check that
custom_buttons.jsonexists and is valid JSON
- Ensure Python 3.7+ is installed:
python --version - Ensure tkinter is installed and Check tkinter availability:
python -m tkinter - On Linux:
sudo apt-get install python3-tk
See INSTALLATION.md for more troubleshooting tips.
- Python: 3.7 or higher
- Operating System: Windows 7/10/11, Linux, macOS
- Dependencies: None (uses only Python standard library)
- External Tool: gallery-dl
This project is licensed under the Apache License 2.0 - see the LICENSE file for details.
This means you can freely use and modify this software. Any derivative works must credit the original author and use the same license.
Contributions are welcome! Please feel free to submit a Pull Request.
- Built as a GUI wrapper for gallery-dl by Mike FΓ€hrmann
If you encounter any issues or have questions:
- Check the INSTALLATION.md guide
- Review existing issues
- Open a new issue with details about your problem

