Personal software documentation site built with SvelteKit, Drizzle, and Better Auth.
- Node.js 22+
- npm (comes with Node)
- PostgreSQL (Neon or self-hosted)
cp .env.example .env
# Edit .env — DATABASE_URL (CMS), AUTH_DATABASE_URL, PORTAL_DATABASE_URL,
# ORIGIN, PORTAL_ORIGIN, AUTH_COOKIE_DOMAIN, BETTER_AUTH_SECRET (match portal)
npm install
npm run db:ensurenpm run dev
# Open browser automatically
npm run dev -- --openDev, preview, and production all run on port 1026. For local SSO, browse http://docs.local.test (via employee-portal Caddy), not localhost:1026.
Admin CRUD (/admin) requires employee-portal login and the Documentation service on your access role.
npm run build
npm run previewSee docs/DEPLOYMENT.md for full deployment guide.
docker build -t docs .
docker run --rm -p 1026:1026 --env-file .env docs| Task | Command |
|---|---|
| Typecheck | npm run check |
| Lint | npm run lint |
| Format | npm run format |
| DB push | npm run db:push |
| Unit tests | npm run test:unit |
| E2E tests | npm run test:e2e |
| Start (prod) | npm start |