It’s definitely nice to make your own tools, but just for convenience I’ll share what I’ve been using:
Initially entr for Linux:
echo "zig-out/bin/foo" | entr -r ./zig-out/bin/foo
Now usually watchexec for Linux, Windows and Mac:
watchexec -w zig-out --no-vcs-ignore -r -- ./zig-out/bin/foo
EDIT: Just for completeness, both tools were mentioned in a previous thread. The difference is that now we can have the build system do the rebuilds on its own, potentially with -fincremental, and now we only watch the outputs with external tool.