Skip to content

🧹 Fast, cross-platform disk cleanup tool with interactive UI for easy directory size visualization.

License

Notifications You must be signed in to change notification settings

trinhminhtriet/dwipe

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

29 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸš€ dwipe

     _          _
  __| |_      _(_)_ __   ___
 / _` \ \ /\ / / | '_ \ / _ \
| (_| |\ V  V /| | |_) |  __/
 \__,_| \_/\_/ |_| .__/ \___|
                 |_|

🧹 Fast, cross-platform disk cleanup tool with interactive UI for easy directory size visualization.

✨ Features

  • Blazing Fast ⚑ – Efficiently scans directories and subdirectories to provide accurate size metrics in seconds.
  • Cross-Platform 🌍 – Works seamlessly on Linux, Windows, and macOS.
  • User-Friendly Output πŸ“Š – Presents results in a clear and readable format.
  • Intuitive Sorting πŸ” – Easily identify the largest folders consuming your disk space.
  • Lightweight & Portable πŸ— – Built in Rust for minimal resource usage and fast execution.
  • Customizable Filters 🎯 – Exclude specific directories or set size thresholds for better insights.

πŸš€ Installation

To install dwipe, simply clone the repository and follow the instructions below:

git clone git@github.com:trinhminhtriet/dwipe.git
cd dwipe

cargo build --release
cp ./target/release/dwipe /usr/local/bin/
dwipe --version
dwipe --help

Running the below command will globally install the dwipe binary.

cargo install dwipe

Optionally, you can add ~/.cargo/bin to your PATH if it's not already there

echo 'export PATH="$HOME/.cargo/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc

πŸ’‘ Usage

Run in current dir

dwipe

Run in specific dir

dwipe [PATH]

vie Docker

with Docker Hub

docker pull trinhminhtriet/dwipe
docker run --rm -v "${PWD}":/workdir trinhminhtriet/dwipe .

Keybindings

  • jk/↓↑ - Navigate up/down
  • l/β†’/Enter - Navigate into folder
  • h/←/Backspace - Navigate to parent
  • d - Delete file/folder. First hit - selects entry. Second hit - confirms deletion.
  • s - Toggle sorting (Title / Size)
  • c - Toggle coloring. When enabled - shows space usage with gradient
  • t - Toggle trash. When enabled - removed content goes to Trash bin.
  • q - Quit

🀝 How to contribute

We welcome contributions!

  • Fork this repository;
  • Create a branch with your feature: git checkout -b my-feature;
  • Commit your changes: git commit -m "feat: my new feature";
  • Push to your branch: git push origin my-feature.

Once your pull request has been merged, you can delete your branch.

πŸ“ License

This project is licensed under the MIT License - see the LICENSE file for details.