DEV Community

Alex Spinov
Alex Spinov

Posted on

Developer Tools Nobody Talks About (But Should)

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
Enter fullscreen mode Exit fullscreen mode

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"
Enter fullscreen mode Exit fullscreen mode

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
Enter fullscreen mode Exit fullscreen mode

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)
Enter fullscreen mode Exit fullscreen mode

5. direnv — per-directory environment variables

Create .envrc in your project:

export DATABASE_URL=postgres://localhost/mydb
export API_KEY=abc123
Enter fullscreen mode Exit fullscreen mode

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
Enter fullscreen mode Exit fullscreen mode

Simpler than nodemon, works with any language.

7. bat — cat with syntax highlighting

bat config.yaml
# Shows line numbers, syntax highlighting, git diff markers
Enter fullscreen mode Exit fullscreen mode

8. dust — du but actually readable

dust
# Shows directory sizes as a visual tree
# Instantly see which folders eat your disk space
Enter fullscreen mode Exit fullscreen mode

9. tldr — man pages for humans

tldr tar
# Shows 5 practical examples instead of 500 lines of man page
Enter fullscreen mode Exit fullscreen mode

10. hyperfine — benchmark shell commands

hyperfine 'python script.py' 'python3.12 script.py'
# Runs both commands 10 times, shows mean/min/max/stddev
Enter fullscreen mode Exit fullscreen mode

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&current_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)