<p><a href="/daily/2024/03/21/git-hooks---yay-or-nay">In yesterday's email</a>, I mentioned that I use watch commands such as <code>nodemon</code>, <code>watchexec</code> and <code>entr</code> whilst developing to run commands automatically when I change code.</p>
<p>For example, running <code>find web/modules/custom | entr ./run test</code> will re-run my test suite when any custom module changes.</p>
<p>This works well for tests, but for other checks, such as static analysis with PHPStan or coding standards with PHPCS, I have integrations in Neovim, and I get real-time feedback as I code.</p>
<p>If a line fails static analysis or coding standards, a diagnostic message is shown so I can fix it immediately, and I don't need to use a watcher or wait for my CI pipeline to fail.</p>
<p><a href="/daily/2024/03/21/git-hooks---yay-or-nay">In yesterday's email</a>, I mentioned that I use watch commands such as <code>nodemon</code>, <code>watchexec</code> and <code>entr</code> whilst developing to run commands automatically when I change code.</p>
<p>For example, running <code>find web/modules/custom | entr ./run test</code> will re-run my test suite when any custom module changes.</p>
<p>This works well for tests, but for other checks, such as static analysis with PHPStan or coding standards with PHPCS, I have integrations in Neovim, and I get real-time feedback as I code.</p>
<p>If a line fails static analysis or coding standards, a diagnostic message is shown so I can fix it immediately, and I don't need to use a watcher or wait for my CI pipeline to fail.</p>