Drag & drop files, choose a template, press Rename — done!
| Original Name | New Name | |
|---|---|---|
01-Track.mp3 |
→ | Coldplay - Yellow.mp3 |
IMG_20250728.jpg |
→ | 2024-07-28 - Vacation.jpg |
report_final.pdf |
→ | 01 - report_final.pdf |
- Smart Audio Tags — automatically extracts Artist, Title, Album, Year, Genre from ID3/FLAC/OGG/etc.
- 20+ Templates — ready-to-use naming patterns for music and general files
- Prefix / Suffix — add text before or after filenames
- Find & Replace — with optional Regex support
- Case Transformations — Title Case, UPPER, lower, Sentence case, camelCase, PascalCase, snake_case, kebab-case
| Template | Example |
|---|---|
Виконавець - Назва |
Coldplay - Yellow.mp3 |
Назва - Виконавець |
Yellow - Coldplay.mp3 |
Назва (Виконавець) |
Yellow (Coldplay).mp3 |
## - Виконавець - Назва |
01 - Coldplay - Yellow.mp3 |
Альбом - Назва |
Parachutes - Yellow.mp3 |
[Рік] Виконавець - Назва |
[2000] Coldplay - Yellow.mp3 |
| Template | Example |
|---|---|
## - Назва |
01 - Document.pdf |
ВЕЛИКІ ЛІТЕРИ |
DOCUMENT.PDF |
snake_case |
my_document.pdf |
kebab-case |
my-document.pdf |
camelCase |
myDocument.pdf |
PascalCase |
MyDocument.pdf |
Видалити числа |
Removes all digits |
Видалити дужки |
Removes ()[]{} content |
- Batch Numbering — custom start number, step size, zero-padding
- Date in Filename — add creation or modification date with custom format
- Remove Patterns — brackets
()[]{}, numbers, special characters - Trim Spaces — leading, trailing, or multiple spaces
- Sort Files — by name, date, size, or type (click column headers)
- Filter by Type — show only audio, images, documents, etc.
- Subfolder Support — recursive scanning with checkbox
- Duplicate Detection — find identical files by MD5 hash
- Undo/Redo — revert rename operations instantly
- Preview — see all changes before applying
- Backup Option — copy originals to backup folder before renaming
- History Log — persistent log of all operations with CSV export
- Profiles — save and load your favorite rename configurations
- Export/Import Profiles — share your presets with others
Audio, Images, Documents, Video, Archives, Code, Games, Presentations, and more.
- Dark Theme with cyan accents (ttkbootstrap)
- Drag & Drop files and folders
- Tooltips — hover over any button for helpful hints
- Collapsible Advanced Options — clean interface with power features hidden until needed
- Context Menu — right-click for quick actions
- Live Preview — see new names as you type
- High DPI Support — crisp display on 4K/Retina monitors (Windows/macOS)
- Portable EXE — no Python installation required
| Key | Action |
|---|---|
Ctrl+A |
Select all |
Ctrl+D |
Deselect all |
Ctrl+Z |
Undo |
Ctrl+Y |
Redo |
Ctrl+P |
Preview changes |
F5 |
Refresh list |
Delete |
Remove selected from list |
Double-click on "New Name" |
Edit name manually |
Double-click on image |
Preview |
| Tool | Version |
|---|---|
| Python | 3.9 - 3.12 |
| Windows | 10 / 11 |
| macOS | 10.15+ |
| Linux | Ubuntu 20.04+ |
# 1) Clone the repository
git clone https://github.com/Antot-12/Renamer.git
cd Renamer
# 2) Run install.bat (installs dependencies)
install.bat
# 3) Run the app
run.bat# 1) Clone the repository
git clone https://github.com/Antot-12/Renamer.git
cd Renamer
# 2) Create virtual environment
python -m venv .venv
# 3) Activate it
# Windows:
.venv\Scripts\activate
# macOS/Linux:
source .venv/bin/activate
# 4) Install dependencies
pip install -r requirements.txt
# 5) Run
python run.pypip install mutagen Pillow tkinterdnd2 ttkbootstrap
python run.pybuild.batThis creates a lightweight portable EXE (~12-15 MB) in the dist/ folder.
pip install pyinstaller
pyinstaller --noconfirm Renamer.specThe executable will be at dist/Renamer.exe
For a full installer with Start Menu shortcuts and context menu integration:
- Build the EXE first:
build.bat - Install Inno Setup
- Run:
iscc installer.iss
The installer includes:
- ✅ Start Menu shortcuts
- ✅ Desktop shortcut (optional)
- ✅ "Rename with Renamer" context menu (optional)
- ✅ Proper uninstaller
Right-click any file → "Rename with Renamer"
To add manually (requires admin):
from renamer.windows_integration import add_context_menu
add_context_menu() # Adds to file context menuOr use the installer which adds it automatically.
Renamer/
├── renamer/ # Main package
│ ├── __init__.py
│ ├── app.py # GUI application
│ ├── constants.py # Constants and settings
│ ├── metadata.py # Metadata extraction
│ ├── file_ops.py # File operations
│ ├── history.py # Undo/Redo system
│ ├── transformers.py # Text transformations
│ ├── duplicates.py # Duplicate detection
│ ├── history_log.py # Persistent history
│ ├── musicbrainz.py # MusicBrainz API integration
│ ├── profiles.py # Profile management
│ └── windows_integration.py # Windows-specific features
├── tests/ # Test suite (185+ tests)
│ ├── test_transformers.py
│ ├── test_history.py
│ ├── test_duplicates.py
│ ├── test_history_log.py
│ ├── test_profiles.py
│ ├── test_metadata.py
│ └── test_musicbrainz.py
├── run.py # Entry point
├── run.bat # Windows launcher
├── install.bat # Windows dependency installer
├── build.bat # Build portable EXE
├── installer.iss # Inno Setup installer script
├── requirements.txt # All dependencies
├── requirements-prod.txt # Production dependencies only
└── pyproject.toml # Package configuration
ModuleNotFoundError: No module named 'tkinterdnd2'
pip install tkinterdnd2 ttkbootstrap mutagen PillowLinux: tkinter not found
sudo apt install python3-tkmacOS: tkinter issues
brew install python-tkEXE too large?
Use build.bat which excludes unnecessary modules. The resulting EXE should be ~15-20 MB.
pip install pytest
pytest tests/ -vAll 185+ tests should pass.
MIT License - use however you want!
