DEV Community

Cover image for My Dev Environment [CLI Tools]
Pepe
Pepe

Posted on

My Dev Environment [CLI Tools]

The command line is where real productivity happens. It's fast, scriptable, and distraction-free. Over time, I’ve tested numerous tools and utilities to enhance my terminal workflow, making it smoother, smarter, and more efficient. In this post, I’ll share the most useful CLI tools I rely on every day.

Whether you’re a developer, DevOps engineer, or just someone who loves optimizing their setup, these tools will help you work faster and enjoy a cleaner, more powerful terminal experience.

Neovim + NvChad

Neovim is my daily driver for editing code and configuration files. Combined with NvChad, it becomes a fast, modern IDE with smart defaults, LSP support, treesitter syntax highlighting, and a beautiful UI. I love how customizable it is. I can tweak everything from keybindings to themes, making it fit my exact workflow. Even though it's my secondary code editor, but No.1 in CLI.

If you are not sure about shortcuts, you can always open the nvchad cheatsheet with + c + h. I'm using space as a leader key.

bat

bat is a drop-in replacement for cat, but with style. It adds syntax highlighting, line numbers, and Git integration, making it much easier to read code or config files directly in the terminal. Once you try it, going back to plain cat feels impossible.

fzf

fzf is a fuzzy finder that makes searching through files, history, or command outputs effortless. I use it daily to quickly open files, find Git commits, or browse command history. It’s one of those tools that quietly saves seconds every minute.

zoxide

zoxide is a smarter cd. It remembers the directories I visit most often and lets me jump to them with just a few keystrokes. It’s perfect for moving around complex project structures without typing long paths over and over.

yazi

yazi is a terminal file manager that’s both fast and visually clean. It feels like a modern version of ranger, with smooth navigation, previews, and Vim-style keybindings. I use it to browse and organize files when I want more context than a simple ls can give.

stow

GNU stow makes managing dotfiles across multiple machines effortless. It symlinks configuration files from a single repository into the right places, keeping everything neat and version-controlled. It’s my favorite way to maintain a consistent setup everywhere.

tmux

tmux is the ultimate terminal multitasking tool. It lets me split the screen, detach sessions, and reconnect later without losing progress. Whether I’m monitoring logs, editing code, or running long builds, tmux keeps everything organized in one place.

lazygit

lazygit turns Git into a visual, keyboard-driven experience inside the terminal. It’s perfect for staging, committing, and reviewing changes quickly — especially during code reviews or when managing multiple branches. It’s Git made simple and fast.

glow

glow lets me preview Markdown files directly in the terminal with elegant formatting. I use it for reading documentation, notes, or README files without ever leaving the CLI. It’s small, fast, and looks great.


Honorable Mentions

A few more tools that deserve a shout-out:

fd – a faster, more user-friendly alternative to find.

eza – a modern ls replacement with icons, colors, and Git integration.

tldr – simplified man pages that show practical examples.

ripgrep – lightning-fast recursive search for code and text.

bottom – a resource monitor with a clean TUI and system insights.

procs – a colorful, structured alternative to ps for process management.


I hope this list of useful CLI tools I am using will help you enhance your command line productivity. See you in the next blog post.

Happy coding!

Top comments (0)