Skip to content

Pramod-Pasala/folder-size

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Comprehensive Storage Scanner

A high-performance, multi-threaded desktop GUI utility written in Rust to scan, analyze, and manage disk space usage.


🚀 Key Features

  • Multi-Threaded Performance: Leverages data-parallelism via rayon to scan directory trees recursively using all CPU cores.
  • Interactive Desktop GUI: Built using egui and eframe to render a native, hardware-accelerated desktop window.
  • Directory Explorer:
    • Shows directories and files sorted by size.
    • Interactive navigation: double-click or click links to enter folders; press the back button to navigate up.
    • Premium progress bars indicating relative size occupancy.
    • Multiple sorting criteria: sort dynamically by size, name, or total items.
  • Select Folder: Open your operating system's native folder dialog selector (powered by rfd) to scan any directory on your computer.
  • Local Recycle System:
    • Moves deleted files and folders to a workspace-local ./.recycled/ directory.
    • Subtracts deleted item sizes from parent directories in real-time.
    • Tracks recycled items in a secure history tab.
  • Safety Deletion: Bypasses the recycle bin for permanent deletions only after double-confirmation and verifying a safety prompt (requiring typing the exact name of the file or folder).
  • Reports Manager: Automatically saves comprehensive scan statistics and allows viewing, individual deletion, or clearing reports.

🛠️ Requirements & Installation

  1. Rust Toolchain: Make sure you have Rust and Cargo installed. If not, get it from rustup.rs.
  2. System Dependencies:
    • Windows: Works out of the box.
    • Linux (if compiling on Linux): May require standard GTK / graphics development packages.

To fetch and compile the project, clone or open the directory in your terminal and build:

cargo build --release

💻 How to Use

Run the Scanner

To launch the application scanning the current directory:

cargo run -- .

To scan a specific directory path directly on launch:

cargo run -- "C:\Users\YourUsername\Documents"

Specifying Custom Exclusions

Excludes standard system folders by default to prevent permission errors. You can supply additional comma-separated relative or absolute folder names to ignore:

cargo run -- . --exclude target,.git,node_modules

🎹 Tab Guide & UI Controls

  1. Explorer Tab:
    • View file trees, search sizes, and browse subfolders.
    • Click 📁 Select Folder to choose a folder using the system file dialog.
    • Click ♻ Recycle to move a folder to the local recycle bin.
    • Click 🗑 Perm (or hold Shift while clicking) to permanently delete.
  2. Recycle Bin Tab:
    • View details of deleted files.
    • Click Remove Record to clean the history database list.
    • Click 🚨 Perm Delete to erase the physical file from the local recycle folder permanently (requires safety verification typing).
  3. Reports Manager Tab:
    • View list of saved reports.
    • Preview files in the right-hand panel, view full report details, or delete report logs.

About

High-performance multi-threaded disk space analyzer and file manager built in Rust with egui

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages