AutoDateInserter v1.2.0 is a Python desktop application for batch file renaming with timestamps.
This repository contains the full source code, allowing you to customize timestamp format, undo behavior, preview logic, UI layout, and processing performance for professional workflows or learning purposes.
If AutoDateInserter saves you time, improves your workflow, or helps you learn Python, please consider supporting the project ❤️
Your support helps me:
- Maintain and improve existing tools
- Add new automation utilities
- Create and share high-quality Python projects
- Provide long-term updates and fixes
Even $3/month makes a real difference.
👉 Click the Sponsor button at the top of this repository to support the project.
- 📁 File & Folder Selection — Add individual files or entire directories recursively
- ⏱️ Intelligent Timestamp Engine — Prepend or append timestamps (
YYYYMMDD_HHMMSS) safely ⚠️ Safe Rename Logic — Automatically resolves filename conflicts to prevent overwriting- 🔍 Preview & Dry-Run — View planned renames before applying changes
- 🔄 Undo Last Operation — Revert previous rename using JSON history
- 📂 Recursive Folder Support — Include subfolders when adding directories
- 📈 Real-Time Progress Monitoring — Smooth progress bar with ETA and throughput
- 🧵 Multithreaded Processing — Responsive UI for large file sets
- 🖱️ Interactive Preview View
- Lists original and new filenames
- Shows rename mapping per file
- 🎨 Modern Dark UI — Built with Tkinter + ttkbootstrap
- 🧹 Clean All — Quickly clear selections and preview
- ⚙️ Fully Customizable — Modify timestamp format, UI, undo logic, or file collection
- 📘 Built-In About / Guide — Feature overview, usage tips, and developer info included
- Clone or download this repository:
git clone https://github.com/rogers-cyber/AutoDateInserter.git
cd AutoDateInserter
- Install required Python packages:
pip install ttkbootstrap tkinterdnd2
(Tkinter is included with standard Python installations.)
- Run the application:
python AutoDateInserter.py
- Optional: Build a standalone executable using PyInstaller:
pyinstaller --onefile --windowed AutoDateInserter.py
-
Add Files or Folders:
- Drag & drop files/folders into the window
- Or click ➕ Add Files / 📂 Add Folder
-
Configure Options:
- Enable Include subfolders if needed
- Choose rename mode: Prepend or Append timestamp
- (Optional) Enable Dry-run to preview without renaming
-
Preview Rename:
- Click 🔁 Preview to see planned changes
-
Execute Rename:
- Click 🕒 RENAME FILES to apply changes
- Monitor progress, ETA, and throughput
-
Pause/Resume:
- Use ⏸ Pause / ▶ Resume for long operations
-
Undo Last Rename:
- Click ↩ UNDO LAST to revert the previous operation
-
Clean All:
- Click 🧹 Clean All to clear selections and previews
-
Help / About:
- Click ℹ Info for guide and developer information
Option Description
File Selection Add single files or directories recursively Include Subfolders Include all files in subdirectories Rename Mode Prepend or Append timestamp Dry-Run Preview changes without renaming files Preview Show planned rename mapping Pause / Resume Control long-running operations Undo Last Revert previous rename operation Progress Tracking Progress bar with live updates ETA / Throughput Files-per-second monitoring Clean All Clear selections and previews About / Guide Built-in help and overview
- TXT — Undo history stored as JSON for safe rollback (timestamped)
- Python 3.10+
- ttkbootstrap — Modern themed UI
- tkinterdnd2 — Drag & drop support (optional)
- Tkinter — Standard Python GUI framework
- Threading — Background processing
- OS / JSON / Datetime — File operations and undo tracking
- Designed for very large file sets
- Processing is memory-efficient and non-blocking
- Dry-run mode allows safe testing before actual rename
- Undo operations stored in timestamped JSON files
- Fully portable when compiled as a standalone executable
AutoDateInserter v1.2.0 is maintained by Mate Technologies, delivering a professional-grade batch file timestamp renaming solution.
Website: https://matetools.gumroad.com
Distributed as commercial source code.
You may use it for personal or commercial projects.
Redistribution, resale, or rebranding as a competing product is not allowed.
