FILO is a Python-based desktop application that helps you organize your files by type, size, and date. It also allows users to move files to trash and apply custom organization rules. The application features an intuitive user interface built with tkinter
and tkinterdnd2
for drag-and-drop functionality.
- Organize files by type, size, and date.
- Move files to trash with confirmation.
- Customizable rules for file organization.
- Drag-and-drop interface for easy file selection.
- Compress Files
- Move .tmp/.log to trash.
- Filter files with customizable date/time spans.
Before running the application, you'll need to set up a Python virtual environment to manage dependencies.
- Python 3.x (Recommended: 3.8 or later)
pip
(Python package manager)tkinter
andtkinterdnd2
for the GUI and drag-and-drop functionality
Follow these steps to set up the environment and run the FILO project:
If you haven't already, clone the project repository to your local machine:
git clone <repository-url>
cd FILO
Navigate to your FILO directory and create a virtual environment using the following command:
python3 -m venv venv
This will create a venv
directory inside the FILO project folder.
venv\Scripts\activate
source venv/bin/activate
Your terminal prompt should now indicate that the virtual environment is active.
Once the virtual environment is activated, install the required dependencies by running:
pip install -r requirements.txt
If you don't have a requirements.txt
file, you can manually install the necessary packages using pip
:
pip install tkinter
pip install tkinterdnd2
After setting up the virtual environment and installing the dependencies, you can run the application by executing:
python file_organizer.py
This will launch the FILO application, and you can start organizing your files.
Here's a breakdown of the project structure:
FILO/
│
├── venv/ # Virtual environment folder (should be ignored in version control)
├── main.py # Main script to launch the application
├── file_organizer.py # Contains the logic for organizing files
├── models.py # Contains models for file categories and rules
├── requirements.txt # List of project dependencies
├── README.md # This file
└── docs/ # Documentation and user manuals
If you'd like to contribute to the FILO project, please fork the repository and submit a pull request with your changes.