A smart desktop automation tool that automatically sorts, classifies, and organizes files using AI.
Built with VS Code , Tabnine , and PySimpleGUI , it features real-time monitoring , AI categorization , and a modern GUI .
- Python 3.10+
- Pip
- (Optional) OpenAI API Key — for AI categorization
git clone https://github.com/Yamiro22/Smart_File_Organizer.git
cd Smart_File_Organizer
pip install -r requirements.txtIf you plan to use AI features :
pip install openai langchain transformers torchIf you plan to use real-time folder monitoring :
pip install watchdogpython main_gui.pyChoose your source/output folders, enable AI mode, and click “Sort Files” .
Run this to auto-organize files as soon as they appear:
python main_watch.py✅ The tool will run in the background and instantly sort new files.
python -m unittest discover| Feature | Description | Libraries |
|---|---|---|
| 🔹Automatic Sorting | Organizes files by type, date, or name | os,shutil |
| 🔹GUI Interface | User-friendly desktop app | PySimpleGUI |
| 🔹Real-Time Monitoring | Detects new files instantly | watchdog |
| 🔹AI Categorization | Analyzes content & filenames | OpenAI,Transformers |
| 🔹Logging System | Tracks all operations | logging |
| 🔹**.exe Packaging** | Runs standalone on Windows | PyInstaller |
{
"source_dir": "data",
"output_dir": "output",
"log_dir": "logs",
"sort_by_date": true,
"file_types": {
"Images": [".png", ".jpg", ".jpeg", ".gif"],
"Documents": [".pdf", ".docx", ".txt", ".xlsx"],
"Videos": [".mp4", ".mov"],
"Audio": [".mp3", ".wav"]
},
"name_patterns": {
"invoice": "Invoices",
"report": "Reports",
"contract": "Contracts"
}
}- Python — Core Language
- PySimpleGUI — GUI Framework
- OpenAI API — AI Categorization
- Transformers — Local Model Integration
- Watchdog — File Monitoring
- VS Code + Tabnine — Development Tools
python -m unittest test_main_gui.pyAll test cases validate directory creation, file movement, and logging behavior.
pyinstaller --noconsole --onefile main_gui.py --icon=logo.ico --add-data "config.json;."The executable will be created in:
/dist/SmartFileOrganizer.exe
| Stage | Goal | Tools / Libraries | Status |
|---|---|---|---|
| 1 | Core Logic & Config | Python, JSON | ✅ Done |
| 2 | GUI Interface | PySimpleGUI | ✅ Done |
| 3 | Real-Time Watch Feature | Watchdog | ✅ Done |
| 4 | Package to .exe |
PyInstaller | ✅ Done |
| 5 | GitHub & Portfolio Showcase | GitHub, Wix Studio | ✅ Done |
| 6 | AI-Powered Upgrade | OpenAI, LangChain, Transformers | ✅ Done |
This project is licensed under the MIT License — see the LICENSE.txt file for details.
Mohammed Yamin
📍 Amman, Jordan
- Developed entirely using VS Code + Tabnine AI
- AI-Powered by OpenAI and Hugging Face Transformers
- Inspired by the need for smart digital organization tools