entr -- when a file changes, run a command
I use this on literally 100% of my projects. Normally it's "when my source changes, run tests" or sometimes "when files change, do 'terraform plan' to see what would change".
Using this one command shortens developer feedback loops from a minute to microseconds! And you don't have to think about it! It's magic.
`ls -1 *.py | entr pytest`
`git ls-files | entr terraform plan`
For more, see our friend and national treasure Julia Evans: https://jvns.ca/blog/2020/06/28/entr/