Feature · Organise

Size map: see what is eating your disk

The current folder as a treemap: the bigger the folder, the bigger the block. Drill in, reveal or delete, copy a report; Reclaim finds build junk.

Default shortcut: Ctrl+Shift+T · Alt+Shift+Enter Updated 15 August 2026 View as Markdown

cwdio's size map: a treemap of a project folder where node_modules fills most of the area at 47 MB, beside a labelled public block at 7.2 MB and smaller ones for .git and src. The footer reads 55 MB and 849 files.
Bigger folder, bigger block. Every tile is a live row — reveal it, drill into it, or delete it from here.

Ctrl+Shift+T draws the current folder as a treemap: every folder is a block sized by what it holds, so the thing eating your disk is the thing you cannot miss. Unlike a separate disk-usage tool, every tile is a live row in your file manager — you can drill in, jump the panel to it, or delete it from the same screen and watch the map shrink.

What it does

  • A squarified treemap of the active panel’s folder, with a live scanning line and cancel-on-close. Tiles carry name, size, share of the current level and file count; tiny children fold into one (everything else) tile so the map never silently drops bytes.
  • Drill in and out. Activate a folder tile to descend; the breadcrumb or Backspace goes back up.
  • Reveal and Delete in place. Reveal lands the panel on the entry; Delete routes through the ordinary trash confirmation, and the map reconciles locally without a rescan.
  • Copy report. One click copies the current level as a Name · Size · Share table, biggest first, for pasting into a message or a ticket.
  • Folder sizes in the list. Alt+Shift+Enter (Total Commander’s chord) computes recursive totals for every folder row; under a size sort with Folders first on, they reflow biggest-first as each lands.
  • Reclaim disk space. A dev-mode view listing reclaimable build artefacts under the folder, marker-gated, sized, largest first, with a checkbox each and a danger-styled permanent delete.
  • Properties for a mixed selection. Alt+Enter on several entries shows the combined recursive size, folders included — the answer the status bar’s selection total (which counts a folder as 0) cannot give.

How to use it

  1. Navigate to the folder in question — the drive root, your user profile, a projects folder — and press Ctrl+Shift+T.
  2. Look for the big blocks. Click one to see its details; activate it to go inside; keep going until you find the thing you had forgotten about.
  3. Reveal it if you want to inspect first; Delete it if you already know. It goes to the Recycle Bin.
  4. For a projects folder, try Tools ▸ Reclaim disk space… instead: it goes straight to the node_modules and target folders you can rebuild.

Under the hood

One bounded scan engine (a breadth-first walk with a dozen directories in flight per level) powers the map, the folder-size column and Properties. The wire tree is pruned to a bounded shape — at most 100 children per node and 6 000 nodes — with sub-0.05 % children folded into the aggregate tile, and children plus aggregate always sum exactly to the parent. The scan runs in the host process; only the pruned tree crosses to the window.

What it deliberately does not do

  • It does not follow symlinks or junctions, so a link into a large tree does not double-count it.
  • The list’s computed folder sizes are a display overlay: a header click re-lists from the host and loses them (run Alt+Shift+Enter again).
  • Reclaim never descends into a candidate — a nested node_modules belongs to its parent’s row — and never enters .git.

Questions

How is the size map different from folder sizes in the list?

Alt+Shift+Enter fills in a recursive total for every folder in the current list, and under a size sort the folders reflow biggest-first as the totals land — good when you already know roughly where to look. The size map (Ctrl+Shift+T) is the picture of the whole subtree at once: proportions you can see, drilling in with a click, and delete from the same view.

Can I delete from the map?

Yes. Select a tile and press Delete; it goes through the same tiered trash confirmation as anywhere else, and the map updates locally — bytes subtracted from every ancestor — with no rescan. Reveal jumps the panel to the entry instead if you want to look first.

What is Reclaim?

Tools ▸ Reclaim disk space… lists the build-artefact folders under the current folder — node_modules, target, build, .venv, __pycache__ and the like — sized and largest first, with a checkbox each. Detection is marker-gated (node_modules counts only beside a package.json, target only beside Cargo.toml or pom.xml), so a real folder that happens to be called “build” is never flagged. Deletion there is permanent and always confirmed with the danger-styled dialog.

How long does a scan take?

It shows a live “Scanning… N items · X GB” line, is bounded (about 2 million entries), and cancels when you close the view. Symlinks and junctions are never followed, so it cannot loop. Over a WSL distribution the whole subtree is enumerated by one native find inside the distro instead of walking the slow network share.