explaingit

eza-community/eza

21,668RustAudience · developerComplexity · 2/5MaintainedLicenseSetup · easy

TLDR

A faster, colorful replacement for the Unix 'ls' command that shows files with colors, icons, Git status, and tree views.

Mindmap

mindmap
  root((eza))
    What it does
      Lists files and folders
      Shows Git status
      Displays with colors
      Tree view hierarchies
    Features
      File type icons
      Symbolic link support
      Extended attributes
      Human-readable dates
    Output formats
      Grid layout
      Single column
      Tree structure
      Hyperlinks
    Tech stack
      Rust language
      Nerd Fonts support
      Git integration
    Use cases
      Terminal file browsing
      Git project navigation
      Directory exploration

Things people build with this

USE CASE 1

Replace 'ls' in your terminal workflow to see files with colors, icons, and Git status at a glance.

USE CASE 2

Navigate large directory trees visually using tree view mode to understand folder hierarchies.

USE CASE 3

Check which files in a Git repository have been modified or are untracked without running separate commands.

USE CASE 4

Display file metadata and extended attributes alongside filenames for quick inspection.

Tech stack

RustNerd Fonts

Getting it running

Difficulty · easy Time to first run · 5min

Nerd Fonts optional for icons; works without them.

Use freely for any purpose, including commercial use, as long as you keep the copyright notice.

In plain English

eza is a modern, more colourful replacement for the venerable ls command that ships with every Unix and Linux system. Whenever you open a terminal and type ls, you get a plain list of the files and folders in the current directory; eza does the same job but with a richer, friendlier presentation, it uses colours to distinguish file types, can show icons next to file names if you have a Nerd Font installed, and adds extra metadata that the original ls cannot easily show. Under the hood eza is a single small, fast native binary written in Rust and licensed under EUPL. Its command-line options are similar in spirit to ls but expanded: you can ask for a one-per-line list, a grid, a long view with detailed attributes, or a tree view that recurses into subdirectories. It is aware of symbolic links and extended attributes, can show each file's Git status (modified, untracked, ignored) when you are inside a repository, can mark mount points, can output entries as terminal hyperlinks, and supports customising colours and icons through a theme.yml file. Filtering options let you hide or include dotfiles, respect .gitignore, ignore custom globs, or list only files or only directories. You would use eza any time you spend significant time at a shell prompt and want directory listings quicker to scan than plain ls output, particularly in Git repositories where seeing per-file Git state inline saves you running extra commands. It runs on Linux, macOS, and Windows, and is distributed through most package managers; if you use Nix with flakes, nix run github:eza-community/eza builds and runs it in one step. The full README is longer than what was provided.

Copy-paste prompts

Prompt 1
How do I install eza and set it as an alias for 'ls' on my macOS/Linux system?
Prompt 2
Show me how to use eza's tree view to visualize a nested folder structure with Git status.
Prompt 3
What command-line flags does eza support to customize the output format (grid, list, tree)?
Prompt 4
How do I configure eza to display file icons using Nerd Fonts in my terminal?
Prompt 5
Can I use eza to see which files in my Git repository are modified or untracked?
Open on GitHub → Explain another repo

Generated 2026-05-21 · Model: sonnet-4-6 · Verify against the repo before relying on details.