declutter-cli
v1.0.0
Published
A CLI tool to organize and declutter folders by grouping files into categorized subdirectories
Maintainers
Readme
Declutter CLI 🗂️
A powerful command-line tool to organize and declutter your folders by automatically categorizing files into organized subdirectories based on their file types.
Features
- 🚀 Smart File Organization: Automatically categorizes files by type (images, documents, videos, etc.)
- 📁 10+ File Categories: Supports images, documents, videos, audio, code, archives, and more
- 🔍 Preview Mode: See how files will be organized before making changes
- ⚡ Fast & Efficient: Built with Node.js for optimal performance
- 🎨 Beautiful CLI: Colorful and intuitive command-line interface
- 🛡️ Safe: Confirmation prompts and error handling to protect your files
- 🔧 Flexible: Multiple options and commands for different use cases
Installation
Global Installation (Recommended)
npm install -g declutter-cliLocal Installation
npm install declutter-cliUsage
Interactive Mode
Simply run the command without arguments for an interactive experience:
declutterQuick Commands
Organize Current Directory
declutter organize
# or
declutter oOrganize Specific Directory
declutter organize /path/to/folder
declutter o ~/DownloadsPreview Organization (No Changes Made)
declutter preview
declutter preview /path/to/folderView Supported Categories
declutter categories
# or
declutter cCommand Options
-f, --force: Skip confirmation prompt-q, --quiet: Run in quiet mode with minimal output--overwrite: Overwrite existing files in destination folders
Examples with Options
# Organize without confirmation
declutter organize --force
# Organize quietly
declutter organize --quiet
# Organize with overwrite
declutter organize --overwrite
# Combine options
declutter organize ~/Downloads --force --quietFile Categories
The tool automatically organizes files into the following categories:
| Category | File Types | Folder Name | |----------|------------|-------------| | Images | .jpg, .jpeg, .png, .gif, .bmp, .svg, .webp, .ico, .tiff, .raw | Images | | Documents | .pdf, .doc, .docx, .txt, .rtf, .odt, .pages | Documents | | Spreadsheets | .xls, .xlsx, .csv, .ods, .numbers | Spreadsheets | | Presentations | .ppt, .pptx, .odp, .key | Presentations | | Videos | .mp4, .avi, .mkv, .mov, .wmv, .flv, .webm, .m4v | Videos | | Audio | .mp3, .wav, .flac, .aac, .ogg, .wma, .m4a | Audio | | Archives | .zip, .rar, .7z, .tar, .gz, .bz2, .xz | Archives | | Code | .js, .ts, .py, .java, .cpp, .c, .html, .css, .php, .rb, .go, .rs | Code | | Applications | .exe, .msi, .dmg, .pkg, .deb, .rpm, .appimage | Applications | | Fonts | .ttf, .otf, .woff, .woff2, .eot | Fonts | | Others | All other file types | Others |
Examples
Before Organization
Downloads/
├── photo.jpg
├── document.pdf
├── song.mp3
├── video.mp4
├── archive.zip
├── script.js
└── app.exeAfter Organization
Downloads/
├── Images/
│ └── photo.jpg
├── Documents/
│ └── document.pdf
├── Audio/
│ └── song.mp3
├── Videos/
│ └── video.mp4
├── Archives/
│ └── archive.zip
├── Code/
│ └── script.js
└── Applications/
└── app.exeAPI Usage
You can also use declutter-cli programmatically in your Node.js projects:
const { execSync } = require('child_process');
// Organize a folder
execSync('declutter organize /path/to/folder --force', { stdio: 'inherit' });Requirements
- Node.js 14.0.0 or higher
- npm or yarn
Contributing
We welcome contributions! Please feel free to submit a Pull Request.
Development Setup
- Clone the repository
git clone https://github.com/nil-official/Declutter-CLI.git
cd Declutter-CLI- Install dependencies
npm install- Link for local development
npm link- Test your changes
declutter --helpLicense
MIT License - see the LICENSE file for details.
Support
If you encounter any issues or have suggestions, please open an issue on GitHub.
Changelog
v1.0.0
- Initial release
- Support for 10+ file categories
- Interactive and command-line modes
- Preview functionality
- Safe file operations with confirmations
Made with ❤️ for developers who love organized folders!
