yazi: the file manager that replaced everything

ยทcheatly.dev

Most terminal file managers feel like compromises. ranger is written in Python and chokes on large directories. lf is fast but barebones โ€” you configure everything yourself. nnn is lightning quick but its UI is... minimal, to put it kindly.

yazi is different. It's written in Rust, async by design, and fast enough that navigating a directory with 10,000 files feels the same as one with 10. It previews images, syntax-highlights code, and has a plugin system โ€” all without feeling bloated. If you've tried terminal file managers before and bounced off them, yazi is worth another look.

Install it: brew install yazi (macOS) ยท cargo install yazi-fm ยท other options

5 operations that make it worth switching

1. Navigation that feels instant

Moving Around
h
Go up to parent directory
l
Open file or enter directory
jk
Move down / up in the file list
~
Jump to home directory
z
Jump anywhere with zoxide integration

The three-column layout (parent / current / preview) means you always see where you are and where you're going. No ls โ†’ cd โ†’ ls loop.

2. Bulk file operations

Select files with Space, then operate on all of them at once โ€” copy (y), cut (x), paste (p), delete (d). Selections persist across directories, so you can pick files from different folders before pasting.

3. Built-in preview

Code gets syntax highlighting. Images render inline (in supported terminals like Ghostty, iTerm2, Kitty). PDFs, archives, and media files all preview without plugins.

4. Tabs

Press t to open a new tab, 1-9 to switch between them. Keep different project directories open simultaneously โ€” like browser tabs for your filesystem.

5. Shell integration

Press Q (capital Q) to quit yazi and cd into the directory you were browsing. Without this, quitting a file manager drops you back where you started. Add this to your shell config:

function y() { local tmp; tmp=$(mktemp); yazi "$@" --cwd-file="$tmp"; cd "$(cat "$tmp")"; rm "$tmp"; }
yazi's async architecture means operations like copying large files happen in the background. You can keep browsing while a 2GB file copies โ€” no frozen UI.

For the full reference, see our yazi cheatsheet.