Skip to content

aakashsharma7/File-Organizer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

8 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐Ÿ—‚๏ธ File Organizer

A powerful Python-based utility that automatically sorts your files into organized folders! ๐Ÿš€

โœจ Features

๐Ÿ“ Smart File Organization

  • Automatically sorts files by type (images, documents, videos, etc.)
  • Date-based organization (Year/Month structure)
  • Magic number detection for accurate file type identification
  • Creates folders only when needed (no empty folders)

๐ŸŽจ Modern User Interface

  • Clean and intuitive GUI
  • Dark mode support ๐ŸŒ™
  • Drag and drop functionality
  • Real-time status logging
  • Progress tracking
  • Statistics dashboard ๐Ÿ“Š

๐Ÿ”„ Real-Time Monitoring

  • Watch folders for new files
  • Automatic organization of new files
  • Start/stop monitoring with one click
  • Background processing

๐Ÿ› ๏ธ Technical Features

  • Both CLI and GUI modes
  • Cross-platform compatibility
  • Standalone executable support
  • Customizable organization rules

๐Ÿš€ Quick Start

  1. Clone the repository:
git clone https://github.com/yourusername/file-organizer.git
cd file-organizer
  1. Install dependencies:
pip install -r requirements.txt
  1. Run the application:
# GUI Mode
python file_organizer.py

# CLI Mode
python file_organizer.py --mode cli --source /path/to/directory

๐Ÿ’ป Usage

GUI Mode

  1. Launch the application
  2. Select a directory using the Browse button or drag and drop
  3. Choose organization options:
    • Toggle date-based organization
    • Enable/disable dark mode
  4. Click "Organize Files" to start
  5. Use "Start Monitoring" to watch for new files

CLI Mode

# Basic usage
python file_organizer.py --mode cli --source /path/to/directory

# With date-based organization
python file_organizer.py --mode cli --source /path/to/directory --date-based

๐Ÿ—๏ธ Building Executable

Creating the Executable

  1. Make sure you have PyInstaller installed:
pip install pyinstaller
  1. Build the executable:
# Basic build
pyinstaller --onefile file_organizer.py

# Build with icon (optional)
pyinstaller --onefile --icon=path/to/icon.ico file_organizer.py

The executable will be created in the dist directory.

Using the Executable

  1. Navigate to the dist directory
  2. Run the executable:
    • Windows: Double-click file_organizer.exe
    • Linux/Mac: ./file_organizer

Executable Features

  • ๐Ÿš€ Standalone application (no Python installation required)
  • ๐Ÿ“ฆ All dependencies included
  • ๐Ÿ”„ Full functionality of the Python version
  • ๐Ÿ’ป Works on any compatible system

Executable Usage

# GUI Mode (default)
file_organizer.exe

# CLI Mode
file_organizer.exe --mode cli --source /path/to/directory

# With date-based organization
file_organizer.exe --mode cli --source /path/to/directory --date-based

Distribution

  • Share the executable with others
  • No need to install Python or dependencies
  • Works on systems without Python installed
  • Single file distribution

๐Ÿ“‹ Requirements

  • Python 3.6+ (for development)
  • Required packages (automatically installed):
    • watchdog
    • python-magic-bin
    • tkinterdnd2
    • pyinstaller
    • humanize

๐ŸŽฏ Supported File Types

๐Ÿ“ธ Images

  • JPG, JPEG, PNG, GIF, BMP, SVG

๐Ÿ“„ Documents

  • PDF, DOC, DOCX, TXT
  • XLSX, XLS
  • PPT, PPTX

๐ŸŽฅ Videos

  • MP4, AVI, MKV, MOV, WMV

๐ŸŽต Audio

  • MP3, WAV, FLAC, M4A

๐Ÿ“ฆ Archives

  • ZIP, RAR, 7Z, TAR, GZ

๐Ÿ’ป Code

  • PY, JS, HTML, CSS
  • JAVA, CPP, C, H

๐Ÿค Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

๐Ÿ“ License

This project is licensed under the MIT License - see the LICENSE file for details.

โญ Show Your Support

Give a โญ๏ธ if this project helped you!

๐Ÿ› Known Issues

  • None at the moment! Report any issues you find.

๐Ÿ”ฎ Future Plans

  • Custom organization rules
  • File preview
  • Batch processing
  • Cloud storage integration
  • More file type support

Made with โค๏ธ by Aakash Sharma

About

A powerful Python-based utility that automatically sorts your files into organized folders! ๐Ÿš€

Topics

Resources

Contributing

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages