{"id":13826415,"url":"https://github.com/prashantsengar/ArrangePy","last_synced_at":"2025-07-09T00:33:23.793Z","repository":{"id":51129713,"uuid":"220796261","full_name":"prashantsengar/ArrangePy","owner":"prashantsengar","description":"Organizes files in folders and helps you to clean your PC","archived":false,"fork":false,"pushed_at":"2023-05-01T22:15:55.000Z","size":517,"stargazers_count":28,"open_issues_count":10,"forks_count":21,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-11-05T18:57:51.126Z","etag":null,"topics":["clean-pc","easy","python","python3","windows"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/prashantsengar.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null},"funding":{"github":"prashantsengar","custom":["https://paypal.me/prashantsengar"]}},"created_at":"2019-11-10T13:46:27.000Z","updated_at":"2024-07-22T04:16:32.000Z","dependencies_parsed_at":"2022-08-27T17:11:08.403Z","dependency_job_id":null,"html_url":"https://github.com/prashantsengar/ArrangePy","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/prashantsengar%2FArrangePy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/prashantsengar%2FArrangePy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/prashantsengar%2FArrangePy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/prashantsengar%2FArrangePy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/prashantsengar","download_url":"https://codeload.github.com/prashantsengar/ArrangePy/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":225476383,"owners_count":17480215,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["clean-pc","easy","python","python3","windows"],"created_at":"2024-08-04T09:01:37.097Z","updated_at":"2024-11-20T05:30:42.893Z","avatar_url":"https://github.com/prashantsengar.png","language":"Python","funding_links":["https://github.com/sponsors/prashantsengar","https://paypal.me/prashantsengar"],"categories":["Python"],"sub_categories":[],"readme":"\u003c!--\n*** To avoid retyping too much info. Do a search and replace for the following:\n*** prashantsengar, ArrangePy, prashanttgs, contact@prashants.in, ArrangePy, Organizes files in folders and helps you to clean your PC\n--\u003e\n\n\n\n\u003c!-- PROJECT SHIELDS --\u003e\n\u003c!--\n*** I'm using markdown \"reference style\" links for readability.\n*** Reference links are enclosed in brackets [ ] instead of parentheses ( ).\n*** See the bottom of this document for the declaration of the reference variables\n*** for contributors-url, forks-url, etc. This is an optional, concise syntax you may use.\n*** https://www.markdownguide.org/basic-syntax/#reference-style-links\n--\u003e\n[![Contributors][contributors-shield]][contributors-url]\n[![Forks][forks-shield]][forks-url]\n[![Stargazers][stars-shield]][stars-url]\n[![Issues][issues-shield]][issues-url]\n[![MIT License][license-shield]][license-url]\n[![LinkedIn][linkedin-shield]][linkedin-url]\n\n\n\n\u003c!-- PROJECT LOGO --\u003e\n\u003cbr /\u003e\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://github.com/prashantsengar/ArrangePy/\"\u003e\n    \u003cimg src=\"/img/logo.jpg\" alt=\"Logo\" width=\"250\" height=\"110\"\u003e\n  \u003c/a\u003e\n\n  \u003ch3 align=\"center\"\u003eArrangePy\u003c/h3\u003e\n\n  \u003cp align=\"center\"\u003e\n    Organizes files in folders and helps you to clean your PC\n    \u003cbr /\u003e\n    \u003ca href=\"https://github.com/prashantsengar/ArrangePy\"\u003e\u003cstrong\u003eExplore the docs »\u003c/strong\u003e\u003c/a\u003e\n    \u003cbr /\u003e\n    \u003cbr /\u003e\n    \u003ca href=\"https://github.com/prashantsengar/ArrangePy\"\u003eView Demo\u003c/a\u003e\n    ·\n    \u003ca href=\"https://github.com/prashantsengar/ArrangePy/issues\"\u003eReport Bug\u003c/a\u003e\n    ·\n    \u003ca href=\"https://github.com/prashantsengar/ArrangePy/issues\"\u003eRequest Feature\u003c/a\u003e\n  \u003c/p\u003e\n\u003c/p\u003e\n\n\n\n\u003c!-- TABLE OF CONTENTS --\u003e\n\u003cdetails open=\"open\"\u003e\n  \u003csummary\u003e\u003ch2 style=\"display: inline-block\"\u003eTable of Contents\u003c/h2\u003e\u003c/summary\u003e\n  \u003col\u003e\n    \u003cli\u003e\n      \u003ca href=\"#about-the-project\"\u003eAbout The Project\u003c/a\u003e\n      \u003cul\u003e\n        \u003cli\u003e\u003ca href=\"#built-with\"\u003eBuilt With\u003c/a\u003e\u003c/li\u003e\n      \u003c/ul\u003e\n    \u003c/li\u003e\n    \u003cli\u003e\n      \u003ca href=\"#getting-started\"\u003eGetting Started\u003c/a\u003e\n      \u003cul\u003e\n        \u003cli\u003e\u003ca href=\"#prerequisites\"\u003ePrerequisites\u003c/a\u003e\u003c/li\u003e\n        \u003cli\u003e\u003ca href=\"#installation\"\u003eInstallation\u003c/a\u003e\u003c/li\u003e\n      \u003c/ul\u003e\n    \u003c/li\u003e\n    \u003cli\u003e\u003ca href=\"#usage\"\u003eUsage\u003c/a\u003e\u003c/li\u003e\n    \u003cli\u003e\u003ca href=\"#roadmap\"\u003eRoadmap\u003c/a\u003e\u003c/li\u003e\n    \u003cli\u003e\u003ca href=\"#contributing\"\u003eContributing\u003c/a\u003e\u003c/li\u003e\n    \u003cli\u003e\u003ca href=\"#community\"\u003eCommunity\u003c/a\u003e\u003c/li\u003e\n    \u003cli\u003e\u003ca href=\"#license\"\u003eLicense\u003c/a\u003e\u003c/li\u003e\n    \u003cli\u003e\u003ca href=\"#contact\"\u003eContact\u003c/a\u003e\u003c/li\u003e\n\u003c!--    \u003cli\u003e\u003ca href=\"#acknowledgements\"\u003eAcknowledgements\u003c/a\u003e\u003c/li\u003e --\u003e\n  \u003c/ol\u003e\n\u003c/details\u003e\n\n\n\n\u003c!-- ABOUT THE PROJECT --\u003e\n\n## What it does\n\nOrganizes the files based on their extensions in folders. \n\nIf you run the script in a directory containing hundreds of files of multiple filetypes, the script will arrange all of them in different directories based on the file type. For example, all PDFs are arranged in a directory for PDFs, all document based files (docx, doc, xlsx, pptx etc) are moved to the **docs** directory. \n\nAll these files are moved to a directory named **ArrangedPy** in the directory on which the script was executed. So if you ran the script on your **Downloads** directory, a directory named *ArrangedPy* will be created in **Downloads**.\n\nYou can specify which files to move to which directory using the config.ini file. \n\n* Read about it on my [blog](https://prashants.in/blog/CleanPy-python-script-to-organize-your-files/)\n\n\n## Features\n\nCurrently it has 2 modes\n\n- Easy mode: Organzises files in the current directory\n- Hard mode: Organizes files in the current directory and its subdirectories\n\n\n\n### Built With\n\n* [Python](https://python.org/)\n* and some dedication by the [awesome contributors](https://github.com/prashantsengar/ArrangePy/graphs/contributors)\n\n\n\u003c!-- GETTING STARTED --\u003e\n## Getting Started\n\nFollow the given steps to get started with ArrangePy\n\n### Prerequisites\n\nYou should have Python installed on your system. You can move to Installation if you have it, otherwise continue with the next steps.\n\n* Install [Python](https://python.org/) from python.org\n* Make sure to add Python to PATH if you are on Windows\n* To check that Python has been installed on your PC, open Command Prompt or Terminal and type in following command\n    `python --version`\n\nThis should output `Python 3.x.x` where x.x is the version of your Python installation.\nNote: If that does not work, try `python3 --version` or `py --version`\n\nIn the next part of the readme, `python` will be used, change it with the command that works for your PC\n\n\n### Installation\n\n#### Installation from PyPI\n\n* Open command prompt/terminal and type the following command\n\n  ```sh\n  pip install arrangepy\n  ```\n  or\n  ```sh\n  pip3 install arrangepy\n  ```\ndepending on the version.\n\nIt will install ArrangePy and the required packages.\n\n* To confirm that ArrangePy has been installed successfully, type the following command in terminal\n\n  ```sh\n  arrange -h\n  ```\nIt should show you a message on how to use it.\n\n\n#### Installation from GitHub\n\n* Clone the ArrangePy\n  ```sh\n  git clone https://github.com/prashantsengar/ArrangePy\n  ```\n* Change to the project directory\n  ```sh\n  cd ArrangePy\n  ```\n* Install requirements\n  ```sh\n  pip install -r requirements.txt\n  ```\n* Run ArrangePy\n  ```sh\n  python -m arrangepy\n  ```\n\nFor the usage examples, replace `arrange` with `python -m arrangepy`\n\n\n\n\u003c!-- USAGE EXAMPLES --\u003e\n## Usage\n\n```sh\nusage: arrange [-h] [-w | -s | -b] [-nw] [directory]\n\npositional arguments:\n  directory          The directory to arrange, default is current working directory\n\noptional arguments:\n  -h, --help         show this help message and exit\n  -w, --weak         Weak arrange\n  -s, --strong       Strong arrange\n  -b, --web          Run web GUI\n  -nw, --no-warning  Don't show any warnings when running strong arrange\n```\n\n**Examples**\n\n- `arrange` (Arranges current directory, asks for type of arrange [WEAK/STRONG] )\n- `arrange -w` (Weak arranges current directory)\n- `arrange -w PATH/TO/DIRECTORY` (Weak arranges given directory)\n- `arrange -s -nw PATH/TO/DIRECTORY` (Strong arranges given directory without any warning)\n\n\n### Running the Web GUI\n\n- `arrange -b` # for the web interface\n\n\n### Editing the CONFIG file\n\nYou can edit the config.ini file to change how the directories are created.\nSay the initial configuration is this:\n\n```\n[ext]\nPDF=['pdf'],\nImages=['png','jpeg','jpg','gif', 'tiff', 'psd', 'ico'],\n```\n\nThis will move all PDF files to a directory named *PDF* and all images of mentioned extensions to a directory named *Images*.\n\n\n#### To add a new file type \n(say .eps) to the *Images* directory, add the new extension to the Images list. So it will change to:\n\n```\n[ext]\nPDF=['pdf'],\nImages=['png','jpeg','jpg','gif', 'tiff', 'psd', 'ico', 'eps'],\n```\n\n#### To add a new type of file (new directory)\nSay you want to move all the video files along with PDFs and images. You can do that in this way:\n\n```\n[ext]\nPDF=['pdf'],\nImages=['png','jpeg','jpg','gif', 'tiff', 'psd', 'ico', 'eps'],\nVideos=['mp4','mkv','avi','3gp'],\n```\n\nNow it will arrange all mp4, mkv, avi, 3gp files to the Videos directory.\n\n\n\n\u003c!-- ROADMAP --\u003e\n## Roadmap\n\nSee the [open issues](https://github.com/prashantsengar/ArrangePy/issues) for a list of proposed features (and known issues).\n\n\n\n\u003c!-- CONTRIBUTING --\u003e\n## Contributing\n\nContributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are **greatly appreciated**.\n\n1. Fork the Project\n2. Create your Feature Branch (`git checkout -b feature/AmazingFeature`)\n3. Commit your Changes (`git commit -m 'Add some AmazingFeature'`)\n4. Push to the Branch (`git push origin feature/AmazingFeature`)\n5. Open a Pull Request\n\n\nYou can contribue to this project using multiple ways. **Here are a few things that you can work on**\n\n- Improve this README to explain the idea better. GIFs can be added, for example.\n- Adding extensions to the config.ini file will improve the experience for everyone. \n- Improve the code, add new features or fix [issues](https://github.com/prashantsengar/ArrangePy/issues/). \n\nPlease read the [contribution guide](./CONTRIBUTING.md)\n\n\n## Community \n\nRead the [contributing guide](./CONTRIBUTING.md)\n\nJoin the Telegram group for support and contributing. If you want to contribute, joining the group helps us all a lot because you can get instant feedback.\n\n[\u003cimg src=\"https://upload.wikimedia.org/wikipedia/commons/thumb/8/82/Telegram_logo.svg/1024px-Telegram_logo.svg.png\" alt=\"mTracker Telegram Group\" width=\"150\" height=\"150\"\u003e](https://t.me/joinchat/INDdLlDf-SFDPURESGgdrQ)\n\n\n\u003c!-- LICENSE --\u003e\n## License\n\nDistributed under the MIT License. See `LICENSE` for more information.\n\n\n\n\u003c!-- CONTACT --\u003e\n## Contact\n\nPrashant Sengar - [@prashanttgs](https://twitter.com/prashanttgs) - contact--AT--prashants.in\n\nProject Link: [https://github.com/prashantsengar/ArrangePy](https://github.com/prashantsengar/ArrangePy)\n\n\n\n\u003c!-- ACKNOWLEDGEMENTS --\u003e\n\u003c!-- ## Acknowledgements\n\n* []()\n* []()\n* []()\n --\u003e\n\n\n\n\n\u003c!-- MARKDOWN LINKS \u0026 IMAGES --\u003e\n\u003c!-- https://www.markdownguide.org/basic-syntax/#reference-style-links --\u003e\n[contributors-shield]: https://img.shields.io/github/contributors/prashantsengar/ArrangePy.svg?style=for-the-badge\n[contributors-url]: https://github.com/prashantsengar/ArrangePy/graphs/contributors\n[forks-shield]: https://img.shields.io/github/forks/prashantsengar/ArrangePy.svg?style=for-the-badge\n[forks-url]: https://github.com/prashantsengar/ArrangePy/network/members\n[stars-shield]: https://img.shields.io/github/stars/prashantsengar/ArrangePy.svg?style=for-the-badge\n[stars-url]: https://github.com/prashantsengar/ArrangePy/stargazers\n[issues-shield]: https://img.shields.io/github/issues/prashantsengar/ArrangePy.svg?style=for-the-badge\n[issues-url]: https://github.com/prashantsengar/ArrangePy/issues\n[license-shield]: https://img.shields.io/github/license/prashantsengar/ArrangePy.svg?style=for-the-badge\n[license-url]: https://github.com/prashantsengar/ArrangePy/blob/master/LICENSE.txt\n[linkedin-shield]: https://img.shields.io/badge/-LinkedIn-black.svg?style=for-the-badge\u0026logo=linkedin\u0026colorB=555\n[linkedin-url]: https://linkedin.com/in/prashant-sengar\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fprashantsengar%2FArrangePy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fprashantsengar%2FArrangePy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fprashantsengar%2FArrangePy/lists"}