Skip to main content

Storage Analyzer & Cleanup Recommender

Project description

storageanalyser

macOS Storage Analyzer & Cleanup Recommender.

Scans your home directory (and optionally other paths) to find large files, stale files, junk directories, build artifacts, duplicates, and old downloads. Outputs a prioritised list of cleanup recommendations with estimated space savings.

Installation

uv pip install -e ".[dev]"

Usage

storageanalyser                           # Scan home directory
storageanalyser /Volumes/Data             # Scan a specific path
storageanalyser --top 30                  # Show top 30 recommendations
storageanalyser --duplicates              # Include duplicate detection
storageanalyser --json                    # JSON output
storageanalyser --threshold 50            # Flag files over 50 MB
storageanalyser --ignoredir node_modules  # Skip directories
storageanalyser --includedir CloudStorage # Override a default-skipped directory
storageanalyser --list-skipped            # Show directories skipped by default
storageanalyser --web                     # Launch the web interface
storageanalyser --web --port 9000         # Web interface on a custom port

Web Interface

Launch the web UI with storageanalyser --web. Features include:

  • Live scan progress with cancel support
  • Disk usage pie chart and summary cards
  • Category breakdown bar chart
  • Clickable treemap (click to jump to the recommendation)
  • Recommendations organized by category tabs with per-tab sorting
  • Short/full path toggle for readability
  • Duplicate detection with full path listing and wasted space calculation
  • Configurable skipped directories (override defaults to include cloud storage, etc.)
  • Cleanup script download for selected items
  • Google Drive integration and cross-environment deduplication

Screenshots

Scan form with configurable skipped directories:

Scan Form

Results summary with disk usage pie chart and summary cards:

Results Summary

Category breakdown and clickable treemap:

Category & Treemap

Recommendations organized by category tabs:

Recommendations

Duplicate detection with copy count and wasted space:

Duplicates

Skipped Directories

By default, certain directories are skipped during scans (cloud storage, macOS system directories, Photos library, etc.). Use --list-skipped to see them and --includedir to override:

storageanalyser --list-skipped
storageanalyser --includedir Music --includedir Movies

Development

uv sync --extra dev
uv run python -m invoke test.run
uv run python -m invoke docs.build

Documentation

Full documentation is in the docs/ directory. Build with Sphinx:

uv run python -m invoke docs.build

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

storageanalyser-0.1.2.tar.gz (744.0 kB view details)

Uploaded Source

Built Distribution

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

storageanalyser-0.1.2-py3-none-any.whl (55.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: storageanalyser-0.1.2.tar.gz
  • Upload date:
  • Size: 744.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for storageanalyser-0.1.2.tar.gz
Algorithm Hash digest
SHA256 9bf4534adc44bbedd570c4277beab9c3e850c55b18619db0c24070496c2010fd
MD5 78e9cb46705c9feedc6ae5df09edbef4
BLAKE2b-256 056d632e2c38c0b9c189062803217497ac5b4a4055404d232aabe8dae0ae1a91

See more details on using hashes here.

Provenance

The following attestation bundles were made for storageanalyser-0.1.2.tar.gz:

Publisher: publish.yml on jdrumgoole/storageanalyser

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

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

File metadata

File hashes

Hashes for storageanalyser-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 180487400eed29a616685a4bedce45f37940572bdd0f13948b0d56a970323c22
MD5 ed2395c8cbf0ad3d58f6138b7aa35150
BLAKE2b-256 80023e1ef29bb95617270ec88fbb6adc550dde71bb06a83399ca9462b625af31

See more details on using hashes here.

Provenance

The following attestation bundles were made for storageanalyser-0.1.2-py3-none-any.whl:

Publisher: publish.yml on jdrumgoole/storageanalyser

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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