Disktree


Disktree — Free Download. Disk Space Analyzer

Disktree is a treemap program for finding what fills a disk and removing it. The main window draws every directory as a nested mosaic sized by the space it occupies, with free volume shown at all times. Marking is separate from deleting: a review screen lists everything selected, and permanent removal always asks for confirmation first. The scan reads disk usage in blocks, includes hidden entries, counts hardlinks once and never follows symlinks. Two more modes sort the same tree by file count or by last write time. A side panel reports the selection size, its share of the scan, the number of files, the last write, and for a git checkout the changes, stashes and unpushed commits. A volume picker resets the root to any mounted filesystem, ordered fullest first.

★★★★★
5.0(1 ratings)
File size: 5.01 MB
The latest version of Disktree is: 0.11.0
Operating system: Windows, Mac OS, Linux
Languages: English
Price: $0.00 USD (Open Source (MIT))
  • Treemap mosaic. Every directory is drawn as a rectangle whose area matches the space it consumes, nested inside its parent rectangle. Top-level directories carry a colour strip and a name band; deeper directories that are open carry a slim label row. Colours group data by kind: source code, agent scratch, toolchains, synced files, git data, media, documents and caches, all at one muted level that grows lighter with depth. A diagonal hatch marks space that can be reclaimed, such as caches, sync history, package stores and build output, regardless of colour. In Age mode colour encodes the last write instead, from this week back to older files.
  • Three measurement modes. Size mode reports disk usage as st_blocks multiplied by 512, the value du prints and the space that returns when a file is deleted. Files mode ranks directories by the number of files inside them, which exposes trees of many tiny files that occupy little space but slow every operation. Age mode ranks by the most recent write, which shows which parts of a tree have not been touched in years. The switch sits in the top bar next to the magnification controls.
  • Marking and absorption. Space, X, Enter and the arrow keys act on the tile under the pointer if the mouse moved last, and on the keyboard selection after an arrow or Tab is pressed. A marked tile takes the danger colour, and so does everything inside it, because removing a directory removes its contents. Marking a directory absorbs any marks already placed inside it, and an item inside a marked directory cannot be marked or kept separately. Marking is reversible by pressing again, and the projected saving is never counted twice.
  • Navigation through the trail. The top bar shows the path from the filesystem root down to the current position. A crumb in the tree jumps to that directory, and its dropdown lists sibling directories ordered largest first with their share and size, so sideways movement is one click. A crumb above the scanned root appears dimmer, and clicking it widens the scan to that directory. Arrow keys and Enter operate the same list.
  • Zoom and depth control. Scrolling magnifies toward the pointer. The wheel magnifies until the directory under the pointer fills the view, and the next notch enters it, one continuous motion with the contents growing into place. Scrolling the other way returns outward. Enter descends into the selected directory at any depth, while Backspace or Escape goes up one level. The plus and minus keys magnify without entering, and zero resets the view.
  • Back and forward history. The angle bracket keys beside the measurement switch step backward and forward through directories already visited. Alt plus left and right arrows do the same, as do Command plus bracket on macOS and the mouse's side buttons. This history covers both widening moves and ordinary descent, so a route taken through several branches can be retraced without searching the tree again.
  • Review and removal. The c key opens a list of everything marked. Individual entries can be unmarked there. Move to trash is the default when a trash is available: the system Trash on macOS, trash-put from trash-cli elsewhere, then gio trash, then a built-in XDG trash. Permanent deletion uses rm -rf semantics and always presents a dialog naming what will be removed and how much space will return. After removal the scan runs again so the numbers on screen match the disk, and the gain in free space is reported.
  • Worth a look list. The side panel collects the largest items that could plausibly be removed, ranked by size. The list draws from the same classification that drives the mosaic colours, so caches, package stores, build output and sync history surface ahead of documents and source. Entries in this list are not marked automatically; each one is a suggestion that must be reviewed and marked before anything happens.
  • Volume picker. Pressing v opens a picker listing every candidate volume mounted on the system together with its free space, ordered fullest first. Pseudo-filesystems and duplicate btrfs or APFS mount points are filtered out. Selecting an entry resets the scan root to that volume directly, which makes a full disk on a secondary drive or an external archive visible without restarting the program.
  • Widening with memoization. Going from a home directory to the whole disk reuses the tree already measured. The wider walk receives the existing tree and adopts it wherever it is reached, so only the parts outside the previous root are read. On a typical machine this takes seconds rather than a full rescan. The current view stays on screen until the wider tree arrives, which then opens with the directory that was left selected.
  • Single volume discipline. A scan stays on one volume, defined by the mount source rather than the device number, because btrfs gives each subvolume its own st_dev. Home, log and package cache subvolumes are therefore included while proc, sys, run, tmpfs, boot, other disks, network shares and automount points are excluded. Snapshot subvolumes are excluded because their files share blocks with the live ones. The cross flag enters other volumes but keeps their marks out of the free space projection.
  • Removal safety rules. Only paths under the scanned root can be removed. The filesystem root, the scanned root and the home directory are refused. A mount point is refused, and so is anything containing a mount point, because removal would reach into another filesystem. Directories holding the home directory or a system tree are refused, as are system trees such as usr, etc, boot, var/lib, nix/store and Homebrew prefixes. Symlinks are unlinked and never followed, and nothing is passed through a shell.
  • Git checkout awareness. When a directory is a git checkout, the panel reports the number of changes, stashes and unpushed commits. Git is queried with fsmonitor, hooks and pager disabled, and a checkout that defines its own filter drivers is reported as having unknown changes rather than being asked for status. Selecting a checkout never executes a program it names, which prevents a repository from running code through a tool invoked during inspection.
  • Windows support. The same program answers the same questions on Windows. Disk usage is the allocation NTFS reports for each file, arriving with the directory listing at no extra cost. The whole disk is the drive holding the user profile, usually C:, and mounted folders are treated as links and not entered. Run as administrator on a whole NTFS drive, the scan reads the master file table in one pass of large reads, which is faster than walking the tree and reaches directories the walk is refused. Move to trash uses the Recycle Bin through the shell.
  • Hardware and desktop integration. The program is built with GPUI through gpui-omarchy, so it follows the Omarchy theme and behaves like the rest of the desktop. On Hyprland the window tiles wherever it is placed and is designed for a roomy window; a float rule and size rule can be set for the class disktree. On Windows, macOS, GNOME and KDE the theme follows the system light or dark setting since no Omarchy theme exists there.

Disktree was created by Tobias Lutke and is written in Rust, using the GPUI framework through the gpui-omarchy binding. The source is organised as a workspace with disktree-core holding scanning, the tree, squarified layout, free space accounting and removal logic without any interface code, and disktree-app holding state, actions, key bindings, views, treemap painting, spacing and type scales, and end-to-end tests that drive a real window. The build system provides targets for running a release build against the home directory, linting with rustfmt and clippy under a strict gate where every pedantic warning is an error, running scanner, layout, removal and window-harness tests, and a continuous integration target combining the two. The lint exceptions are written down with reasons in the Cargo configuration.

Alternatives to Disktree:

WMaster Cleanup — Free Download. Windows Cleaner & Optimizer

WMaster Cleanup

WMaster Cleanup is an all-in-one Windows cleaner and optimizer that deeply scans and cleans the C drive, removes system junk, browser cache, and temporary files, and provides privacy protection.
Price: Free   Size: 54.9 MB   Version: 0001   OS: Windows
WinDirStat — Free Download. Disk usage analyzer

WinDirStat

WinDirStat is a disk usage analyzer and cleanup assistant for Microsoft Windows.
Price: Free   Size: 2.8 MB   Version: 2.9.2   OS: Windows
CloneScan — Free Download. Duplicate file finder

CloneScan

CloneScan is a freeware Windows application for locating duplicate files and repeated folder structures.
Price: Free   Size: 3.22 MB   Version: 2.2   OS: Windows
InstallerClean — Free Download. Installer folder cleaner

InstallerClean

InstallerClean is a specialized utility for Windows that scans the hidden C:\Windows\Installer folder and identifies files that are no longer required by the operating system.
Price: Free   Size: 92 MB   Version: 3.1.1   OS: Windows
Drive Sonar — Free Download. Disk analyzer

Drive Sonar

Drive Sonar is a desktop disk usage explorer and analyzer built with Tauri, Rust, React, and TypeScript.
Price: Free   Size: 3.46 MB   Version: 0.9.0   OS: Windows, Mac OS, Linux