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
|
|
|
import type { IntegrationAdapter, IntegrationType } from './types.js'
|
|
|
|
|
import { uptimeKuma } from './uptimeKuma.js'
|
|
|
|
|
import { docker } from './docker.js'
|
2026-06-18 20:12:40 +00:00
|
|
|
import { proxmox } from './proxmox.js'
|
2026-06-18 20:15:11 +00:00
|
|
|
import { netbird } from './netbird.js'
|
2026-06-18 20:16:19 +00:00
|
|
|
import { cloudflare } from './cloudflare.js'
|
2026-06-18 20:17:23 +00:00
|
|
|
import { weather } from './weather.js'
|
2026-06-18 20:18:26 +00:00
|
|
|
import { aws } from './aws.js'
|
2026-06-18 21:06:16 +00:00
|
|
|
import { ssh } from './ssh.js'
|
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
|
|
|
|
|
|
|
|
export const adapterRegistry: Record<IntegrationType, IntegrationAdapter> = {
|
|
|
|
|
uptime_kuma: uptimeKuma,
|
|
|
|
|
docker,
|
2026-06-18 20:12:40 +00:00
|
|
|
proxmox,
|
2026-06-18 20:15:11 +00:00
|
|
|
netbird,
|
2026-06-18 20:16:19 +00:00
|
|
|
cloudflare,
|
2026-06-18 20:18:26 +00:00
|
|
|
aws,
|
2026-06-18 20:17:23 +00:00
|
|
|
weather,
|
2026-06-18 21:06:16 +00:00
|
|
|
ssh,
|
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
|
|
|
}
|