Intuitive Linux File Explorer TUI
Browse directories with arrow keys from the terminal. Fuzzy Find. Autocomplete common locations. Search your filesystem Instantaneously.
FZD is a small, keyboard-driven file explorer for Linux, built with Bash, fzf, zoxide, and plocate. Browse your dir tree with previews, search across your filesystem, and return to your shell right where you need to be. Simple and Enhanced installation, Omarchy theme and editor integration, image and Markdown previews, clipboard actions, and Lazygit support.
Simply lf into your current directory and start typing to fuzzy filter, or Browse the directory tree, edit a config, and find files across the
system.
You don't need the whole name: lf imm will cd directly to that folder. Add context with
lf docker immich. Zoxide handles the matching and ranking; if it hasn't learned
a match yet, FZD opens discovery with your query ready to go.
Already know the path? lf /srv/docker/immich takes you there directly.
Use lff immich on its own to start a fresh global search.
After years of using Linux, I still found myself asking: where did that project put its files?
I built FZD to find my bearings without memorizing paths or repeatedly typing
cd and ls, and to continue to put off learning vim keybinds.
Run as your normal user on Omarchy, ordinary Arch, Ubuntu/Debian, Fedora, or WSL:
git clone https://github.com/seanap/fzd.git
cd fzd
bash install.sh --enhancedOpen a new terminal, then run lf.
Use --shell bash / --shell zsh to configure one shell.
--enhanced adds optional image/Markdown preview tools, clipboard support,
inline autosuggestions, and Nerd Font conveniences.
Both modes prioritize reusing existing tools and preserve your shell customizations.
FZD lives under ~/.local,
Shell setup in ~/.config/fzd/shell.bash or shell.zsh.
Missing system packages need root or cached sudo authorization (sudo -v).
Both modes install missing plocate tools and initialize the default search index
with updatedb when needed. Existing indexing exclusions and schedules stay in
place. Use --no-updatedb to skip installer-triggered initialization; see the
indexing guidance.
On Ubuntu/Debian, Enhanced uses a checksum-verified Glow download when your configured repositories do not provide it; no additional APT repository is added.
Packages, manual installation, updates and removal
Debian and Arch build instructions, checksum verification, alternative prefixes, automation, and uninstall commands live in the technical guide and packaging guide. Download release packages and checksums from GitHub Releases. AUR publication is pending.
FZD follows the current Omarchy palette each time it starts and opens files with Omarchy's selected editor, including subsequent editor changes. It reuses existing zoxide, fzf, fonts, aliases, and shell setup. An optional Enhanced launcher opens an interactive terminal that stays in the directory you choose. Images render with Chafa; Markdown renders with Glow.
| Key | Action |
|---|---|
| Left / Right | Parent / highlighted directory |
| Enter | Return to the shell there, or edit a file |
| Type | Filter the current directory |
| Ctrl+F | Global discovery |
| Alt+Left / Alt+Right | Back / Forward |
| Ctrl+C / X / V | Copy / Cut / Paste |
| F8 | Move to Trash after confirmation |
| Alt+Y | Copies the selected absolute path to your system clipboard |
| Alt+G | Opens the selected Git working tree in Lazygit |
| F1 | All controls and contextual help |
| Esc | Cancel |
Previews, rename, new folders, recent directories, and safe file operations are
built in. Your editor, terminal styling, and existing shell commands stay yours.
If another tool already owns lf or lff, use fzd_cd or fzd_find instead.
Type lf imm and press Enter to let zoxide resolve the partial name, Complete it inline on Bash or zsh with inline suggestions:
press Right to accept the suggested suffix. Existing engines are reused.
Setup, updates and removal.
Configuration, compatibility and troubleshooting · Tests · Benchmarks · Report an issue
FZD is open source under the MIT license.

