Everyone knows about VS Code, Docker, and Postman. Here are tools that deserve more attention.
1. HTTPie — curl for humans
# curl version
curl -X POST https://api.example.com/data -H 'Content-Type: application/json' -d '{"name": "test"}'
# HTTPie version
http POST api.example.com/data name=test
Same result, 70% fewer characters. Colored output, JSON by default.
2. jq — JSON Swiss Army knife
# Extract nested data from API response
curl -s https://api.coingecko.com/api/v3/simple/price?ids=bitcoin\&vs_currencies=usd | jq '.bitcoin.usd'
# Output: 67234
# Transform arrays
echo '[{"name":"a","val":1},{"name":"b","val":2}]' | jq '.[].name'
# Output: "a" "b"
3. ripgrep (rg) — grep but 10x faster
# Search all Python files for 'import requests'
rg 'import requests' --type py
# Find TODO comments across entire codebase
rg 'TODO|FIXME|HACK' --type-add 'code:*.{py,js,ts,go,rs}' -t code
Respects .gitignore, blazing fast on large codebases.
4. fzf — fuzzy finder for everything
# Fuzzy search files
find . -type f | fzf
# Fuzzy search git log
git log --oneline | fzf --preview 'git show {1}'
# Fuzzy search and open in vim
vim $(fzf)
5. direnv — per-directory environment variables
Create .envrc in your project:
export DATABASE_URL=postgres://localhost/mydb
export API_KEY=abc123
cd into the directory and env vars are loaded. cd out and they're unloaded. No more .env conflicts.
6. watchexec — run commands on file change
# Re-run tests when Python files change
watchexec -e py -- pytest
# Rebuild on save
watchexec -e ts,tsx -- npm run build
Simpler than nodemon, works with any language.
7. bat — cat with syntax highlighting
bat config.yaml
# Shows line numbers, syntax highlighting, git diff markers
8. dust — du but actually readable
dust
# Shows directory sizes as a visual tree
# Instantly see which folders eat your disk space
9. tldr — man pages for humans
tldr tar
# Shows 5 practical examples instead of 500 lines of man page
10. hyperfine — benchmark shell commands
hyperfine 'python script.py' 'python3.12 script.py'
# Runs both commands 10 times, shows mean/min/max/stddev
Bonus: Free APIs as developer tools
Sometimes the best "tool" is knowing the right API:
-
IP lookup:
curl ip-api.com/json/(no auth) -
JSON placeholder:
curl jsonplaceholder.typicode.com/posts/1(mock data) -
Weather:
curl 'api.open-meteo.com/v1/forecast?latitude=40.71&longitude=-74.01¤t_weather=true'(no auth) -
Crypto:
curl 'api.coingecko.com/api/v3/simple/price?ids=bitcoin&vs_currencies=usd'(no auth)
Full list: Awesome No-Auth APIs
What developer tools do you use that nobody talks about?
More lists: Awesome Python Automation | Awesome Scraping APIs
Top comments (0)