vivid
Generates LS_COLORS values from YAML filetype databases and color themes, for ls, tree, fd, bfs, dust and other tools.
vivid is a generator for the LS_COLORS environment variable, which controls colorized output in ls, tree, fd, bfs, dust and other tools. You run vivid generate <theme> and export the result in your shell RC file, for example export LS_COLORS="$(vivid generate molokai)". Fish is supported with set -gx LS_COLORS (vivid generate molokai).
Unlike dircolors, vivid keeps the filetype database and the color themes in separate YAML files. This lets you change or customize a theme without touching the list of file extensions. Colors are written in RRGGBB format instead of raw ANSI escape codes. vivid translates them to 24-bit truecolor codes by default, or to interpolated 8-bit codes with --color-mode 8-bit (-m 8-bit) for terminals without truecolor support.
Bundled themes include snazzy, molokai, ayu and lava. vivid themes lists all available themes. An ansi theme uses your terminal's 16-color palette, so colors follow your terminal theme when you switch between light and dark mode. Custom filetypes.yml databases can be placed in /usr/share/vivid, $HOME/.config/vivid or $XDG_CONFIG_HOME/vivid on POSIX systems, or in %APPDATA%\vivid on Windows. Custom themes go in a themes subfolder, or you can pass a path directly with vivid generate path/to/my_theme.yml.
It is aimed at developers and sysadmins who want consistent, customizable file-type coloring in the terminal. On macOS, the BSD ls ignores LS_COLORS, so the README suggests using GNU ls from coreutils.
Installation
# via Homebrew
brew install vivid
# via Arch Linux (pacman)
pacman -S vivid
# via Cargo
cargo install vivid



Alternatives & related tools
McFly
Replaces ctrl-r shell history search with a full-screen search ranked by a small neural network using directory, prior commands, and exit status.
genact
Terminal program that prints fake activity output (compilers, builds, botnets, downloads) to look busy. Runs natively or in a browser via WebAssembly.
atuin
Shell history management with SQLite storage, search interface, and encrypted sync across machines
fish
Interactive command line shell with syntax highlighting, autosuggestions, and tab completions that work without configuration
zoxide
Smart cd replacement that remembers frequently used directories for quick navigation
add a badge to your README
Maintain vivid? Show that it's featured on trmn. The badge links back to this page.
[](https://www.trmn.sh/tools/vivid?utm_source=badge)<a href="https://www.trmn.sh/tools/vivid?utm_source=badge"><img src="https://www.trmn.sh/badge/vivid.svg" alt="Featured on trmn" height="20"></a>