orchard
mirrorEvery site I host, in one repo, along with the Cloudflare Tunnel and Caddy that front them. It's all Go, Vite, and SQLite, and it runs on a desktop at home with nothing listening on an inbound port.
blogbuncaddycloudflare-tunneldockergogolanghomelabhtml-templatemonorepoself-hostedseosqlitestatic-sitetypstuptime-monitoringviteweb-analytics
1{{ define "form" }}
2<div class="auth-eyebrow">not set up</div>
3<h1 class="auth-title">{{ .Title }}</h1>
4{{/* Creating the account over HTTP would let whoever found the hostname first
5 claim it, so it is a command on the machine instead. */}}
6<p class="auth-hint mt-0 mb-3">There is no account yet. On the machine:</p>
7<div class="code-chip">make auth-init</div>
8<p class="auth-hint">That prints the recovery codes the first sign in uses.</p>
9{{ end }}
10
11{{ define "main" }}{{ template "authShell" . }}{{ end }}