Add guestbook with WebAuthn admin and SQLite

Introduce server-rendered guestbook and moderation portal.
Persist data in SQLite (better-sqlite3); add WebAuthn YubiKey
admin auth, rate-limiting, spam heuristics, and sanitization.
Switch Docker image to run Node/standalone Astro (remove nginx),
update docker-compose, Dockerfile, astro.config, and package.json.
Add .env.example, docs/guestbook.md, gitignore updates, layouts,
API routes, and supporting lib/components/pages for the feature.
This commit is contained in:
2026-03-07 20:21:39 +01:00
parent 915594e83e
commit 88e00e5d41
26 changed files with 2327 additions and 45 deletions
+1
View File
@@ -13,6 +13,7 @@ const links = [
{ href: "/coffee", label: "coffee" },
{ href: "/library", label: "library" },
{ href: "/links", label: "links" },
{ href: "/guestbook", label: "guestbook" },
{ href: "/ai", label: "ai" },
{ href: "/changelog", label: "changelog" },
];