• feat: styled error pages for all error surfaces
    Some checks failed
    CI / Backend (push) Failing after 11s
    CI / UI (push) Successful in 51s
    Release / Test backend (push) Successful in 54s
    Release / Check ui (push) Successful in 1m9s
    CI / Backend (pull_request) Successful in 45s
    CI / UI (pull_request) Successful in 56s
    Release / Docker / caddy (push) Successful in 1m22s
    Release / Docker / backend (push) Failing after 1m46s
    Release / Docker / ui (push) Successful in 2m32s
    Release / Docker / runner (push) Successful in 3m35s
    Release / Gitea Release (push) Has been skipped

    kamil released this 2026-03-30 23:00:00 +05:00

    • ui/src/error.html: custom SvelteKit last-resort fallback (replaces
      the bare '500 | Internal Error' shown when +error.svelte itself fails)
      — branded, auto-refreshes in 20s, book+lightning SVG illustration
    • ui/src/routes/+error.svelte: improved with context-aware SVG
      illustrations (question mark book for 404, lightning bolt for 5xx),
      larger status watermark, and a Retry button on non-404 errors
    • caddy/errors/500.html: new static error page matching the 502/503/504
      design — served by Caddy when a gateway-level 500 occurs
    • Caddyfile: add handle_errors 500 block pointing at /srv/errors/500.html
    • caddy/Dockerfile: COPY errors/ into image so static pages are baked in
    Downloads