writingtooling

My terminal setup in 2025 (and the 8 tools that matter)

Reez Patel1 min read★ starred

Drop a screen-recording at public/media/blog/terminal-tour.mp4 and it becomes the hero.

I live in a terminal. Not in a performative, look-at-my-ricing way — it's simply where I'm fastest. Here's the current state of the setup, and the small sharp tools that carry the most weight.

The foundation

WezTerm + tmux + zsh. WezTerm because GPU rendering makes scrollback buttery and the config is Lua (so is my editor config, and consistency is cozy). tmux because sessions-per-project means I never rebuild context after a restart.

# the holy trinity of modern shell ergonomics
eval "$(starship init zsh)"
eval "$(zoxide init zsh)"
source <(fzf --zsh)

The eight that matter

  1. ripgrep — the fastest way to answer "where did I define that?"
  2. fdfind without the man page.
  3. fzf — ctrl-r is now a superpower.
  4. ezals with git status baked in.
  5. batcat, but with syntax highlighting.
  6. zoxidez proj and I'm home.
  7. lazygit — staging individual hunks without tears.
  8. jq — because every API returns JSON eventually.

Neovim, briefly

Treesitter for highlighting, LSP for everything else, telescope for finding, and a colorscheme I've tweaked so many times it qualifies as original art. The whole config is in my dotfiles repo.

The real trick isn't any single tool — it's that they're all composable, all scriptable, and all muscle memory by now. Invest in your dotfiles. Future you is lazy and grateful.