Add backend skeleton: Fastify + SQLite API with auth and integrations
- Single-user JWT auth with a first-run /api/setup endpoint, gated by
GET /api/system/setup-status, to back an upcoming enrollment page
- SQLite schema for users, integrations, secrets (AES-256-GCM encrypted),
bookmarks, and bookmark categories
- Integration adapter registry with real health-check adapters for
Uptime Kuma and Docker, stubs for the rest, wired to
POST /api/integrations/:id/test
- CRUD routes for integrations and bookmarks
- backend/ as its own Docker service in docker-compose.yml, Vite dev
proxy for /api, .env.example for required secrets
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BbJV5nm8KPVH1oNJYKpnoF
2026-06-18 19:04:48 +00:00
|
|
|
PORT=4000
|
|
|
|
|
ARCHNEST_DB_PATH=./data/archnest.db
|
|
|
|
|
ARCHNEST_JWT_SECRET=change-me-to-a-long-random-string
|
|
|
|
|
ARCHNEST_SECRET_KEY=change-me-to-another-long-random-string
|
|
|
|
|
ARCHNEST_CORS_ORIGIN=http://localhost:5173
|
2026-06-19 15:25:10 +00:00
|
|
|
ARCHNEST_GUAC_CRYPT_KEY=change-me-to-a-32-byte-secret!!
|
2026-06-19 16:03:40 +00:00
|
|
|
# Where guacd is reachable. In docker-compose this is the "guacd" service name;
|
|
|
|
|
# for local dev run guacd separately and point these at it (default 127.0.0.1:4822).
|
|
|
|
|
ARCHNEST_GUACD_HOST=127.0.0.1
|
|
|
|
|
ARCHNEST_GUACD_PORT=4822
|