A CLI tool to organize messy data science project folders
Project description
chaosorg
Organize messy project folders with one simple command.
📁 What does it do?
chaosorg automatically organizes files in your project directory based on file types. It sorts files into folders like:
scripts/notebooks/data/models/docs/outputs/
This keeps your project tidy, easy to navigate, and collaboration-ready.
📦 Installation
pip install chaosorg
Or, for local development:
git clone https://github.com/YOUR_USERNAME/chaosorg.git
cd chaosorg
pip install -e .
🚀 Quick Start
From your terminal:
chaosorg organize
⚡ Features
✅ Organize
chaosorg organize
Moves your files into categorized folders.
🪤 Dry Run
chaosorg organize --dry-run
See what would happen, without making any changes.
↺ Undo
chaosorg undo
Restores everything back to how it was before you ran organize. Only the latest organization is stored.
🔍 How Files Are Sorted
| Folder | Extensions |
|---|---|
scripts/ |
.py |
notebooks/ |
.ipynb |
data/ |
.csv, .xls, .xlsx |
models/ |
.pkl, .joblib, .h5 |
docs/ |
.md, .txt, .pdf, .docx |
outputs/ |
.png, .jpg, .jpeg |
You can customize these rules by editing FOLDER_MAP in the source code.
🙌 Contributing
We welcome contributions! If you'd like to:
- Add support for more file types
- Build a GUI
- Improve undo history
- Polish the CLI interface
Please see CONTRIBUTING.md to get started.
👺 About
Made with love by Chris Jaimy Antony to solve the chaos of cluttered folders — especially during hackathons, ML experiments, or collaborative academic work.
🔒 License
MIT License. See LICENSE file for details.
✨ Links
- GitHub: github.com/YOUR_USERNAME/chaosorg
- PyPI: pypi.org/project/chaosorg
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file chaosorg-0.1.1.tar.gz.
File metadata
- Download URL: chaosorg-0.1.1.tar.gz
- Upload date:
- Size: 6.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
37fcd61491b5c6553aa70bf63d74a8eb60b3955f77d11da18431bea3e5b714a5
|
|
| MD5 |
88afc29de16d8ab3ccf6afc48a71e375
|
|
| BLAKE2b-256 |
541a802938de15a6d94c0012427ef3591c8e92bfac301f0800c037d343d97c85
|
File details
Details for the file chaosorg-0.1.1-py3-none-any.whl.
File metadata
- Download URL: chaosorg-0.1.1-py3-none-any.whl
- Upload date:
- Size: 6.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
09ef5c29226ef42fb87975652e3425565c95708c6b59baeb539a18ce74637b9a
|
|
| MD5 |
f2e13a0237bcfed435b083d14e4a03a0
|
|
| BLAKE2b-256 |
861e1ecb84a76f3a1e4080ac671d01500258117967473511dd178014bd1f6922
|