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:
@@ -0,0 +1,24 @@
|
||||
# Required: random secret used to salt IP hashes and sign sessions
|
||||
# Generate with: openssl rand -hex 32
|
||||
SECRET_KEY=replace_me_with_a_random_secret
|
||||
|
||||
# WebAuthn / YubiKey configuration
|
||||
# rpID must match the domain your site is served from (no scheme, no port)
|
||||
WEBAUTHN_RP_ID=hiddenden.cafe
|
||||
# Full origin including scheme (and port if non-standard)
|
||||
WEBAUTHN_ORIGIN=https://hiddenden.cafe
|
||||
# Human-readable name shown in the YubiKey prompt
|
||||
WEBAUTHN_RP_NAME=Cozy Den
|
||||
|
||||
# Database path (Docker mounts /data as a named volume)
|
||||
DB_PATH=/data/guestbook.db
|
||||
|
||||
# Server binding
|
||||
HOST=0.0.0.0
|
||||
PORT=3000
|
||||
|
||||
# --- Development overrides ---
|
||||
# For local dev (npm run dev), override with:
|
||||
# WEBAUTHN_RP_ID=localhost
|
||||
# WEBAUTHN_ORIGIN=http://localhost:4321
|
||||
# DB_PATH=./data/guestbook.db
|
||||
Reference in New Issue
Block a user