Files
PiCloud/dashboard
MechaCat02 6d58178f68 fix(dashboard): F-U-003 surface known collection patterns on the Files page
The Files page could only list a collection if the operator already
knew its name and typed it in. No "browse known collections" affordance,
no backend endpoint listing collections.

Closest approximation without new backend: pull registered files-trigger
collection_globs from the existing triggers list and surface them as:
- a <datalist> on the collection input for autocomplete
- chip buttons under the form that one-click set the input

Empty state copy points the operator at the Triggers tab. Backend
endpoint to list known collections directly is still a v1.1.10+ task.

Styling uses the F-U-004 :root tokens so it inherits the dark theme.

AUDIT.md anchor: F-U-003 (frontend-only; backend endpoint deferred).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-07 20:34:58 +02:00
..

PiCloud Dashboard

SvelteKit SPA for the PiCloud control plane.

Stack

  • SvelteKit 2 with adapter-static (SPA fallback)
  • Svelte 5 (runes)
  • TypeScript
  • Vite

Scripts

npm install
npm run dev      # vite dev server on :5173, proxies /api → PICLOUD_API
npm run build    # static SPA bundle into ./build/
npm run check    # svelte-check
npm run lint
npm run format

By default npm run dev proxies /api/* and /healthz to http://127.0.0.1:18080. Override with PICLOUD_API=http://host:port npm run dev.

How it fits in

In production Caddy serves the contents of ./build/ as static files and falls back to index.html for client-side routing. The dashboard only talks to the control plane (/api/admin/* on the manager); data-plane invocations go through /api/execute/* on the orchestrator and are not issued from the dashboard directly during MVP.