- Every Dev Carry
- Posts
- The Best Developer Tools (1)
The Best Developer Tools (1)
1st edition
A handpicked selection of the best developer tools.
Here are the best tool picks of this edition. Visit the archive.
In this edition:
eza – A modern alternative to
ls
bat – A
cat(1)
clone with wingsfd – A simple, fast, and user-friendly alternative to
find
eza
- A modern alternative to ls
I haven't used the ls
command to list directories in more than 3 years. Why? Because I replaced it with eza. Originally known as exa, the project was abandoned and later forked by the community. It supports icons via Nerd Fonts and shows Git information when used inside a repository. One of the coolest features is that it supports listing nested directories in a tree structure.
To get the most out of it, I use the following aliases in my Fish config:
# Replace ls
alias ls "eza -h -a -l --git --icons"
# List files like a tree. E.g., "lst 3" to list directories 3 levels deep
alias lst "eza -h -a -l --git --icons --tree --level "
bat
- A cat(1) clone with wings
The cat
command is great for short files or quick grep
searches, but it’s not ideal when you need syntax highlighting to read a file carefully. Sure, opening it in your favorite editor works, but do you really need a full editor to just read something? Or worse, what if you don’t have the right mode installed for the file type?
This is where bat shines. It does everything cat
does, but better! It also includes handy pagination for those long config files we all have to dig into occasionally.
bat
integrates seamlessly with other tools. For example, if you're using fzf
and want to use bat
to display previews:
fzf --preview "bat --style=numbers --color=always --line-range :500 {}"
And voilà, you've got a fuzzy searcher with beautiful previews!
fd
- A simple, fast, and user-friendly alternative to find
While fd
isn't a full replacement for find
, it covers most use cases more efficiently. It is also blazingly fast. Here’s a quick example:
# Find all files named 'README.txt' in the current directory
fd 'README.txt'
For a deeper dive, you can check out this great tutorial.
See you in the next edition 👋🏻