A modern replacement for the ls command, with colors, icons, Git status, and tree views in a single Rust binary.
chaqchase/lla
A modern, extensible replacement for the Unix ls command with multiple views, Git-aware output, content search and plugins.
Open-source alternative to:eza
- Stars
- 1,232
- Forks
- 26
- Open issues
- 0
- Last commit
- 10 days ago
What is it?
lla is a command-line directory listing tool written in Rust that replaces ls with richer output. It offers several layouts, including a compact default view, long metadata view, table, grid, tree, recursive, and timeline views, and it can show Git repository status alongside entries.
Beyond listing, lla supports filtering by name, extension, glob, regular expression, file type, size, and time, as well as ripgrep-backed content search. Directory jumping with bookmarks and history, file and directory diffing, and theme and shortcut configuration are also included. Output can be emitted as JSON, NDJSON, or CSV for scripting.
lla has a plugin system: official prebuilt plugins can be installed, and native or WebAssembly Component Model plugins can add listing fields, formatting, and actions. It installs on Linux, macOS, Windows, and NetBSD via a script, Cargo, or several package managers.
Key features
- 01Multiple listing views, including long, table, grid, tree, recursive, Git and timeline layouts.
- 02Filtering by name, extension, glob, regex, size, time, and Git ignore rules.
- 03Content search backed by ripgrep with syntax-highlighted context.
- 04Directory jumper with bookmarks and history for Bash, Zsh, and Fish.
- 05JSON, NDJSON, and CSV output for scripting.
- 06Plugin system supporting native and WebAssembly extensions.
Use cases
- Replacing ls in daily terminal use with a more informative directory view.
- Inspecting a repository's file status and structure from the command line.
- Exporting directory listings as JSON or CSV for scripts and pipelines.
- Searching file contents and filtering files by metadata without chaining several tools.
Quick start
- 1
Install with Cargo
cargo install lla - 2
Initialize the configuration
lla init - 3
Try the long view
lla -l
Things to know
- 32-bit x86 Windows is not supported.
- The NetBSD binary omits the embedded WASM plugin runtime.
In collections
Topics
FAQ
- What is lla?
- A modern, extensible replacement for the Unix ls command with multiple views, Git-aware output, content search and plugins. lla is a command-line directory listing tool written in Rust that replaces ls with richer output. It offers several layouts, including a compact default view, long metadata view, table, grid, tree, recursive, and timeline views, and it can show Git repository status alongside entries.
- Is lla free to use? What license does it have?
- lla is open source under the MIT license. Check the license terms before using it in commercial products.
- Is lla still maintained?
- Actively maintained. The last commit to lla was on Oct 12, 2026.
- What can I use lla for?
- Replacing ls in daily terminal use with a more informative directory view. Inspecting a repository's file status and structure from the command line. Exporting directory listings as JSON or CSV for scripts and pipelines. Searching file contents and filtering files by metadata without chaining several tools.
- How do I install lla?
- Install with Cargo: cargo install lla Initialize the configuration: lla init Try the long view: lla -l
- Where can I get lla?
- The source code and installation instructions are on GitHub: https://github.com/chaqchase/lla
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
An open-source, AI-integrated terminal for macOS, Linux and Windows that supports BYOK and local models, durable SSH sessions and inline file previews.
A terminal file manager written in Rust, built on non-blocking async I/O with image preview, Lua plugins and a vim-like interface.
A keyboard-driven, three-pane terminal file browser written in Rust, configurable with Lua and rich external previews.
A community-driven framework for managing zsh configuration, bundling hundreds of plugins and themes plus an update tool.
A cat(1) clone for the terminal with syntax highlighting, Git change markers, and automatic paging.