# broot

> Interactive file manager and directory navigator with fuzzy search, git integration, and file operations

Stars: 13.1k · Language: Rust · License: MIT · Categories: File Management

- Repository: https://github.com/Canop/broot
- Website: https://dystroy.org/broot
- Page: https://www.trmn.sh/tools/broot

## Overview

Broot is an interactive terminal file manager that provides a tree-like view of directories with fuzzy search capabilities. It replaces traditional commands like `ls` and `tree` by showing directory structures in a compact, navigable format that respects `.gitignore` files and handles large directories efficiently by showing only relevant files.

The tool allows users to quickly navigate to directories using fuzzy search, preview files including images in compatible terminals (Kitty, WezTerm), and perform file operations like move, copy, and delete while maintaining visual context. Users can open multiple panels for side-by-side directory comparison and file management, similar to dual-pane file managers.

Broot includes git integration through commands like `:gf` to display file statuses and `:gs` to show only git-tracked changes. It supports content searching with `c/pattern`, regex searches with `/pattern`, and various sorting options including by size (`--sort-by-size`) and date (`--sort-by-date`). The tool also features a staging area for batch operations on multiple files and customizable verbs for executing commands on selected files.

![Broot directory overview](https://media.trmn.sh/cached/6aba7cf22705d5f96f68705b5f65b3b0f8b19841a993199b6baee01a59b091ca.png)

![Fuzzy search navigation](https://media.trmn.sh/cached/8cc7f4d725ea03fb2b12fd83e88ee67566106a5f3ef38bd1420761086e8f3982.png)

![Multi-panel file management](https://media.trmn.sh/cached/14b0d104ffb2809d10d19df0a839f8badd9911d0d710027757c31100bc6b8a60.png)

## Alternatives

- [dust](https://www.trmn.sh/tools/dust.md): A disk usage analyzer that shows directory sizes with visual bars and intelligent tree traversal (Rust, 12.6k stars)
- [Dufs](https://www.trmn.sh/tools/dufs.md): File server with static serving, uploads, search, zip folder download, account-based access control, HTTPS, and WebDAV, usable from a browser or curl. (Rust, 11.0k stars)
- [lsd](https://www.trmn.sh/tools/lsd.md): Enhanced ls replacement with colors, icons, tree view, and additional formatting options written in Rust (Rust, 16.3k stars)
- [xplr](https://www.trmn.sh/tools/xplr.md): Terminal-based file explorer with Lua scripting, keyboard controls, and plugin system for command-line integration (Rust, 4.8k stars)
- [ouch](https://www.trmn.sh/tools/ouch.md): CLI tool for compressing and decompressing files across 14+ formats with automatic format detection (Rust, 3.8k stars)

## Guides

- [Modern Replacements for ls](https://www.trmn.sh/replace/ls): Replace ls with eza, lsd, or exa for colors, Git status, tree view and richer long listings. Also covers broot, an interactive tree navigator.
- [Modern Replacements for tree](https://www.trmn.sh/replace/tree): Tools you can run instead of tree: eza, erdtree, lsd and broot compared by tree output, gitignore handling, flags and config.
- [Best Terminal File Managers](https://www.trmn.sh/best/terminal-file-managers): Compare terminal file managers: yazi, nnn, ranger, lf, broot and more. Differences in previews, plugins, footprint and keybindings.

---

Canonical: https://www.trmn.sh/tools/broot
