Home

Deploy

Primary deployment: Render static site. Mirror on GitHub Pages.

rendering…

Render (primary)

The repo includes a render.yaml manifest. Connect the repo to Render as a Static Site, accept the manifest, and the service is auto-created.

  • Build: npm ci && npm run build (or: pnpm install --frozen-lockfile && pnpm build)  
  • Publish dir: out/ (set by output: "export" in next.config.mjs)
  • Cache-Control: max-age=300 for HTML, max-age=31536000, immutable for /_next/static/*

GitHub Pages (mirror)

.github/workflows/site.yml builds the site and uploads it as a Pages artifact on every push to main. Both deploys run the same build, so they cannot drift.

Why Render over Pages

Render
  • PR previews with URL
  • Custom domain + auto cert
  • Edge cache + rewrites
  • Native _redirects
Pages
  • Mirror-only, free
  • No per-PR preview URL by default
  • Custom domain via CNAME
  • 404.html hack for rewrites