Web UI for browsing and inspecting Harbor jobs, trials, and trajectories.
Start the frontend dev server with hot reloading:
bun install
bun devThe frontend will be available at http://localhost:5173.
For full development with the backend API, use the Harbor CLI from the repository root:
harbor view ./jobs --devThis starts both the backend API server and the frontend dev server with proper configuration.
Build the production bundle:
bun run buildOutput is written to build/client/ with static assets ready to be served.
harbor view serves static files from src/harbor/viewer/static/, not directly from apps/viewer/build/client/. After editing frontend code, you need to both build and copy the output. The easiest way:
# Option 1: Let harbor do it (recommended)
harbor view ./jobs --build
# Option 2: Manual build + copy
cd apps/viewer
bun run build
rm -rf ../../src/harbor/viewer/static
cp -r build/client ../../src/harbor/viewer/staticAfter either option, restart the harbor view server for changes to take effect.
- React 19 with React Router 7
- TanStack Query for data fetching
- TanStack Table for sortable tables
- Tailwind CSS v4 for styling
- shadcn/ui components
- Shiki for syntax highlighting