Skip to main content

WARPCLEAN - Blazing Fast Python CLI File Organizer

Reason this release was yanked:

Non Updated documentation

Project description

WARPCLEAN

WARPCLEAN is a deterministic, rule-based Python CLI package for organizing files at warp speed — safely, predictably, and reversibly.

Install it once, run it anywhere, and clean up directories without fear of losing files or ending up with a structure you didn’t agree to.


Installation

WARPCLEAN is distributed as a Python package.


pip install warpclean

Once installed, the warpclean command is available globally:


warpclean --help

Requirements

  • Python 3.9 or newer
  • No mandatory dependencies

Optional (but recommended):

  • rich – colored output, tables, progress bars
  • python-magic – deeper MIME detection

Quick Start

Safely preview what will happen


warpclean ~/Downloads --dry-run

Nothing is moved. You get a full simulation.


Organize files for real


warpclean ~/Downloads

Files are moved into structured category folders.


Organize without touching originals


warpclean ~/Downloads --copy

Creates an organized warpclean/ subdirectory and leaves originals untouched.


What WARPCLEAN Does (At a High Level)

WARPCLEAN runs a strict, predictable pipeline:

  1. Scan the target directory recursively
  2. Classify each file using MIME types and extensions
  3. Optionally detect duplicates
  4. Optionally group related files
  5. Plan all file operations
  6. Execute moves or copies
  7. Log operations for undo

No step mutates the filesystem until the plan is complete.


Default Organization Rules

By default, files are organized into:

  • Pictures/
  • Videos/
  • Audio/
  • Documents/
  • Archives/
  • Installers/
  • Misc/

Classification is based on:

  • MIME type (preferred)
  • File extension fallback
  • Explicit category rules

No guessing, no machine learning, no heuristics that change over time.


Warp-Speed Mode


warpclean ~/Downloads --fast

Warp-speed mode skips expensive content inspection and trusts file extensions.

Use this when:

  • Organizing very large directories
  • You trust extensions
  • Throughput matters more than deep inspection

Avoid this mode when:

  • Extensions are unreliable
  • Precision matters more than speed

Dry Run (Simulation Mode)


warpclean ~/Downloads --dry-run

Dry run mode:

  • Executes the full pipeline
  • Builds a complete move plan
  • Shows exactly what would happen
  • Touches zero files

This is the recommended way to run WARPCLEAN for the first time.


Tree View (Dry Run Only)


warpclean ~/Photos --dry-run --tree

Displays the planned result as a directory tree instead of a table.

Useful for visualizing large reorganizations before committing.


Copy Mode


warpclean ~/Downloads --copy

Instead of moving files, WARPCLEAN:

  • Creates a warpclean/ subdirectory
  • Recreates the organized structure inside it
  • Copies files into the new structure

Original files remain untouched.


Date-Based Organization


warpclean ~/Photos --date-based

Images and videos are organized by modification date:


Pictures/YYYY/MM/DD/
Videos/YYYY/MM/DD/

Ideal for:

  • Camera dumps
  • Screenshots
  • Media archives

Grouping Related Files


warpclean ~/Projects --group-related

WARPCLEAN can group related files together, including:

  • Numbered sequences (img_001.jpg, img_002.jpg)
  • Versioned documents (report_v1.docx, report_final.docx)
  • Sidecar files sharing the same stem

Grouped files are placed into a single collection folder to prevent separation.


Duplicate Detection


warpclean ~/Files --detect-duplicates

Duplicate detection uses:

  1. File size filtering
  2. MD5 hash comparison

Behavior:

  • First occurrence is organized
  • Subsequent duplicates are skipped
  • No files are deleted automatically

Undo System

Every successful operation is logged automatically.

Log file:


.warpclean_undo.jsonl

Undo the last operation batch


warpclean ~/Downloads --undo

Undo multiple batches


warpclean ~/Downloads --undo 3

Undo everything


warpclean ~/Downloads --undo 0

Undo restores files to their original locations and cleans up empty directories when possible.


Cleaning Empty Directories


warpclean ~/Downloads --clean-empty-dirs

Recursively removes empty directories after organization or undo.

Safe to use with dry-run for previewing.


Command-Line Options


warpclean <path> [options]

Common options:

  • --dry-run Simulate operations without moving files
  • --fast Enable warp-speed mode
  • --copy Copy instead of move
  • --group-related Group related files together
  • --detect-duplicates Skip duplicate files
  • --date-based Organize images/videos by date
  • --tree Tree view output (dry-run only)
  • --progress Show progress bars (requires rich)
  • --undo [N] Undo last N batches (0 = all)
  • --clean-empty-dirs Remove empty directories
  • --verbose Enable debug logging
  • --color Enable colored output

Safety Guarantees

WARPCLEAN guarantees that it will:

  • Never overwrite existing files
  • Never delete files automatically
  • Resolve name collisions safely (file_1.txt, file_2.txt)
  • Skip files already in the correct location
  • Always allow a dry-run preview
  • Always allow undo of completed operations

Who This Package Is For

WARPCLEAN is built for:

  • Developers
  • Power users
  • Students managing large project folders
  • Anyone who wants predictable file organization

If you want control, reversibility, and warp-speed execution, this tool is designed for you.


License

MIT License


Final Advice

Run a dry run first.
Warp speed is powerful — control keeps it safe.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

warpclean-0.1.2.tar.gz (23.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

warpclean-0.1.2-py3-none-any.whl (21.5 kB view details)

Uploaded Python 3

File details

Details for the file warpclean-0.1.2.tar.gz.

File metadata

  • Download URL: warpclean-0.1.2.tar.gz
  • Upload date:
  • Size: 23.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.9

File hashes

Hashes for warpclean-0.1.2.tar.gz
Algorithm Hash digest
SHA256 d376d2db724de7d77bb61cb1d94a8898ab2c850abcddcd6cda41e7747f694b0c
MD5 62cf685cc3c0210216a0cfbb2cbd8a8a
BLAKE2b-256 3ea55fe657e52cc117da0d67bb2182d913d0c5ec2e21251c819b9d444343c64d

See more details on using hashes here.

File details

Details for the file warpclean-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: warpclean-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 21.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.9

File hashes

Hashes for warpclean-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 ce50721d1d11f570757eca9f4f5aa94e88e2481b3a7f1c80b7770b2db18ebfb7
MD5 5621dc07165bdf9041ac78246bc69b4b
BLAKE2b-256 8d8697e655b7a7452c74cb2e97414850e88da3fbc66885e43805ab33be1529e6

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page