12bbdc77

By: Michael Lynch <git@mtlynch.io>

Add renderTemplate wrapper to eliminate ExecuteTemplate boilerplate

Every page handler repeated the same render-then-handle-error block after
building its template data. Extract it into a single renderTemplate helper
in templates.go and route all 7 call sites through it.

The helper renders into a buffer first, so a mid-render failure becomes a
clean 500 instead of a partially written response.

renderLogin's status parameter was always http.StatusOK, so drop it and
route renderLogin through the same wrapper, leaving no special cases.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
configuredevShellbackendbackend-devcheck-bashcheck-frontendcheck-go-formattingcheck-go-test-packagescheck-trailing-newlinecheck-trailing-whitespacediagramdocker-imagee2e-testsgo-testsimport-from-tinybeanslint-sqllittle-momentslittle-moments-devx86_64-linux