du prints a number. ncdu lets you open the directory that number came from and see the next one down.
ncdu scans a tree and shows a navigable list, biggest first. It is the interactive cousin of du, and of dust if you already have that page. The scan can be saved and opened later, which matters when the tree is slow. Checked on ncdu 2.9.2: -o wrote a JSON scan with -1 -q (one update, quiet), and -f read that scan back.
install
# macOS
brew install ncdu
# in the default repos
sudo apt install ncdu
# in the default repos
sudo dnf install ncdu
# in the default repos
sudo pacman -S ncdu
examples
# Open the UI on the current directory. Arrow keys move, enter descends, q quits. This stays in the foreground
ncdu
# Write a JSON scan and exit. -1 is one refresh, -q is quiet
ncdu -o scan.json -1 -q .
# Open a saved scan instead of walking the disk again
ncdu -f scan.json
pro tip
-x stays on one filesystem, so a scan of / does not wander into other mounts. Delete is a keystroke inside the UI (d). Treat that as rm, because it is.
honest limits
The UI is not a script. If you need a number in a pipeline, use du or dust. A scan of a network mount will be as slow as that mount. d deletes for real. ncdu will not ask a second time in the way you hope.