Turnpike/frontend/README.md

902 B

Turnpike Frontend

Svelte 5 + Vite PWA. Offline-first with Dexie (IndexedDB) and background sync.

Development

From the repo root with direnv allow (or Node.js 18+ installed):

cd frontend
npm install
npm run dev

Runs on :5173, proxies /api to the Go backend on :8180.

Build

npm run build

Output goes to dist/, which the Go binary embeds at compile time.

Architecture

  • src/db.js — Dexie schema, session management
  • src/api.js — all API calls, injects Authorization: Bearer header
  • src/sync.js — sync pull, SSE stream, outbox flush
  • src/pages/ — page components (one per route)
  • src/components/ — shared UI components
  • src/app.css — global CSS custom properties (colors, spacing, type scale)

All UI reads come from Dexie via liveQuery(), not direct API calls. Styles are scoped per component; no hardcoded color values.