entr
Run arbitrary commands when files change.
Reload go web server:
$ git ls-files | entr -r go run main.go
Graphviz:
$ ls web.dot | entr -s 'dot -Tpng web.dot -o web.png'
Typst:
$ ls configuration.yaml main.typ | entr -s 'typst compile main.typ'