# File Organizer
A Python script to automatically organize files in a specified folder into categorized subfolders based on file types.
## Features
- Automatically moves files into folders like **Documents**, **Images**, **Videos**, **Audio**, **Archives**, **Apps**, and **Others**.
- Supports organizing any folder by providing the path as a CLI argument or via interactive prompt.
- Non-destructive: existing folders and files not matched by categories remain unaffected.
- Easy to use and extend with more file type categories.
- Installable from PyPI for easy setup.
## Installation
Install the latest release from PyPI:
~~~bash
pip install file-organizer-advanced
~~~
## Usage
Run the CLI command to organize your files:
~~~bash
file-organizer-advanced
~~~
By default, it organizes your Downloads folder. To specify a different folder:
Example:
~~~bash
file-organizer-advanced /Users/username/Downloads
~~~
## Development and Testing (Optional)
If you want to contribute or test the package locally, follow these steps:
1. **Create and activate a Python virtual environment:**
~~~bash
python3 -m venv env
source env/bin/activate # On Windows use `env\Scripts\activate`
~~~
2. **Install the package from PyPI or Locally:**
~~~bash
pip install --upgrade pip
pip install file-organizer-advanced
# Or for local development:
pip install -e .
~~~
3. **Run the CLI tool to organize a folder:**
~~~bash
file-organizer-advanced /path/to/folder
~~~
4. **When done, deactivate the environment:**
~~~bash
deactivate
~~~
## How it works
- Scans the target folder.
- Detects file types based on extensions.
- Moves files into corresponding folders.
- Creates folders if they don’t exist.
## Notes
- Running the CLI multiple times will not affect already organized files.
- The CLI does not modify files inside existing subfolders.
- Files without known extensions are moved to the **Others** folder.
# Sample Output:
✅ Moved: example.pdf → Documents
✅ Moved: vacation.jpg → Images
✅ Moved: project.zip → Archives
✅ Moved: app.dmg → Apps
📂 Folder '/Users/username/Downloads' organized successfully!
# Screenshot

Raw data
{
"_id": null,
"home_page": "https://github.com/vikram-mistry/file-organizer",
"name": "file-organizer-advanced",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.6",
"maintainer_email": null,
"keywords": "file, organizer, cli, automation, python, folder, sort",
"author": "Vikram Mistry",
"author_email": "Vick <youremail@example.com>",
"download_url": "https://files.pythonhosted.org/packages/24/bf/8291c460d6a39b0e788c68cf8c4008174634971481009e265e1c1a1c2e87/file_organizer_advanced-1.0.2.tar.gz",
"platform": null,
"description": "# File Organizer\n\nA Python script to automatically organize files in a specified folder into categorized subfolders based on file types.\n\n## Features\n\n- Automatically moves files into folders like **Documents**, **Images**, **Videos**, **Audio**, **Archives**, **Apps**, and **Others**.\n- Supports organizing any folder by providing the path as a CLI argument or via interactive prompt.\n- Non-destructive: existing folders and files not matched by categories remain unaffected.\n- Easy to use and extend with more file type categories.\n- Installable from PyPI for easy setup.\n\n## Installation\n\nInstall the latest release from PyPI:\n\n~~~bash\npip install file-organizer-advanced\n~~~\n\n## Usage\n\nRun the CLI command to organize your files:\n~~~bash\nfile-organizer-advanced\n~~~\n\nBy default, it organizes your Downloads folder. To specify a different folder:\n\nExample:\n\n~~~bash\nfile-organizer-advanced /Users/username/Downloads\n~~~\n\n## Development and Testing (Optional)\n\nIf you want to contribute or test the package locally, follow these steps:\n\n1. **Create and activate a Python virtual environment:**\n\n~~~bash\npython3 -m venv env\nsource env/bin/activate # On Windows use `env\\Scripts\\activate`\n~~~\n2. **Install the package from PyPI or Locally:**\n~~~bash\npip install --upgrade pip\npip install file-organizer-advanced\n# Or for local development:\npip install -e .\n~~~\n3. **Run the CLI tool to organize a folder:**\n~~~bash\nfile-organizer-advanced /path/to/folder\n~~~\n4.\t**When done, deactivate the environment:**\n~~~bash\ndeactivate\n~~~\n\n## How it works\n\n- Scans the target folder.\n- Detects file types based on extensions.\n- Moves files into corresponding folders.\n- Creates folders if they don\u2019t exist.\n\n## Notes\n\n- Running the CLI multiple times will not affect already organized files.\n- The CLI does not modify files inside existing subfolders.\n- Files without known extensions are moved to the **Others** folder.\n\n# Sample Output:\n\u2705 Moved: example.pdf \u2192 Documents\n\u2705 Moved: vacation.jpg \u2192 Images\n\u2705 Moved: project.zip \u2192 Archives\n\u2705 Moved: app.dmg \u2192 Apps\n\n\ud83d\udcc2 Folder '/Users/username/Downloads' organized successfully!\n\n# Screenshot\n\n",
"bugtrack_url": null,
"license": null,
"summary": "A CLI tool to automatically organize files into categorized folders",
"version": "1.0.2",
"project_urls": {
"Homepage": "https://github.com/vikram-mistry/file-organizer"
},
"split_keywords": [
"file",
" organizer",
" cli",
" automation",
" python",
" folder",
" sort"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "d95ffd0986096284ce24eced3ce5e0c193a3bb45c2212267f7d658fa22a55049",
"md5": "02571603561a0d65e9b7750eaea31c46",
"sha256": "f111a724b05343edb4cae4c48186cc00b484fa4387a7323857724075d620776f"
},
"downloads": -1,
"filename": "file_organizer_advanced-1.0.2-py3-none-any.whl",
"has_sig": false,
"md5_digest": "02571603561a0d65e9b7750eaea31c46",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.6",
"size": 3973,
"upload_time": "2025-08-10T10:48:37",
"upload_time_iso_8601": "2025-08-10T10:48:37.501737Z",
"url": "https://files.pythonhosted.org/packages/d9/5f/fd0986096284ce24eced3ce5e0c193a3bb45c2212267f7d658fa22a55049/file_organizer_advanced-1.0.2-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "24bf8291c460d6a39b0e788c68cf8c4008174634971481009e265e1c1a1c2e87",
"md5": "5520da4ab3714501950c2579b7478265",
"sha256": "14552ec0e781955d633e4e7db5867336de22e13b0405b6eb48dbfae5149a8bf6"
},
"downloads": -1,
"filename": "file_organizer_advanced-1.0.2.tar.gz",
"has_sig": false,
"md5_digest": "5520da4ab3714501950c2579b7478265",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.6",
"size": 3698,
"upload_time": "2025-08-10T10:48:38",
"upload_time_iso_8601": "2025-08-10T10:48:38.734001Z",
"url": "https://files.pythonhosted.org/packages/24/bf/8291c460d6a39b0e788c68cf8c4008174634971481009e265e1c1a1c2e87/file_organizer_advanced-1.0.2.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-08-10 10:48:38",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "vikram-mistry",
"github_project": "file-organizer",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"requirements": [],
"lcname": "file-organizer-advanced"
}