Your Downloads folder is a disaster. Your Desktop looks like a digital tornado hit it. "New Folder (47)" is mocking you.
Sortify is Marie Kondo for your computer (but less judgmental). It's a smart file organizer that:
- Actually understands your files (not just "ends in .jpg = image")
- Uses AI to categorize stuff intelligently
- Watches folders and sorts automatically
- Speaks plain English - just tell it what to do
- Has a time machine for when you mess up
- 🔄 Auto-Sort - Watches folders, sorts new files instantly
- ↩️ Full Undo/Redo - Undo last action, entire sessions, or cherry-pick specific files
- 👀 Preview Mode - See exactly what happens before files move
- 🛑 Cancel Button - Changed your mind? Hit cancel mid-operation
- 🖱️ Drag & Drop - Works exactly like you think
- 💬 Natural Language - "Move all PDFs older than 30 days to Archive" ← it gets this
- AI Categorization - Reads file contents, not just extensions
- Image Analysis - Detects faces, screenshots, scanned docs
- Social Media Sorting - WhatsApp, Instagram, Telegram, etc. auto-sorted
- Duplicate Finder - Find and delete duplicate files safely
- Session Management - Groups operations for easy bulk undo
- Database Protection - Triple-layer safety (even survives power loss)
- Thread Safety - No more crashes or database locks
- Clean Exits - Proper cleanup even when task-manager-murdered
- Memory Management - Zero leaks, background threads handled properly
- Python 3.8+ or Windows/macOS
- 4GB RAM (8GB for AI features)
- 150MB disk space
Option 1: Windows Installer (Easiest)
- Download from Releases
- Run installer
- Find in Start menu
Windows might complain about "unknown publisher" - we're just small and broke, not malicious.
Option 2: From Source
git clone https://github.com/Mrtracker-new/Sortify.git
cd Sortify
python -m venv venv
source venv/bin/activate # Linux/Mac
venv\Scripts\activate # Windows
pip install -r requirements.txt
python main.pyOption 3: CLI Mode (For automation nerds)
# Preview first (dry run)
python main.py --dry-run --source "C:\Downloads" --organize
# Do it for real
python main.py --yes --source "C:\Downloads" --organizeQuick Start:
- Launch Sortify
- Drag files into the window OR click "Select Files"
- Enable "Preview Mode" to see what happens (recommended first time)
- Click "Organize Files"
- Review preview → Click "Continue"
Auto-Sort (Set and Forget):
- Click "Auto-Sort" toggle in toolbar
- Select folder to watch
- Choose destination
- New files auto-organize instantly
Undo Mistakes:
- Last action: Click "Undo Last Action" in toolbar
- Entire session: History tab → Sessions → Select → "Undo"
- Specific files: History tab → Select operations → "Undo Selected"
Natural Language:
- Go to Commands tab
- Type: "Move all PDFs to Archive folder"
- Hit Execute
# Dry run (see what would happen)
python main.py --dry-run --source "/path/to/folder" --organize
# Auto-confirm everything
python main.py --yes --source "/path/to/folder" --organize
# Custom destination
python main.py --source "/downloads" --dest "/organized" --folder "MyFiles" --organizeWon't open?
- Check Python version:
python --version(need 3.8+) - Reinstall dependencies:
pip install -r requirements.txt - Windows DLL errors? Install Visual C++ Redistributables
Not sorting files?
- Check folder permissions (can you create files there?)
- File in use by another program? Close it
- Check if file type is supported
AI seems dumb?
- First run needs internet to download models
- Need 4GB+ RAM for AI features
- Try restarting the app
Windows freaking out?
- Add Sortify to Windows Defender exclusions
- We're not malware, Windows just hates unsigned software
Found a bug? Got an idea? Want to help?
- 🐛 Report bugs
- 💡 Share ideas
- 🔧 Submit pull requests
- ⭐ Star the repo (it's free and makes us happy)
MIT License - do whatever you want, just don't sue us. See LICENSE for legal stuff.
👤 Made by: Rolan Lobo
📧 Email: rolanlobo901@gmail.com
🐞 Report Bugs: GitHub Issues
If this saved you from digital chaos, star the repo. Stars are free and we're broke.
Made with ❤️, ☕, and way too much Stack Overflow