Frontend — Basics
Location: src/ and src/routes/
The frontend is a SvelteKit TypeScript application. It uses Svelte 5's runes-based reactivity ($effect, $props, $state) throughout. All communication with the Rust backend goes through Tauri's invoke() function. Incoming rover data arrives as Tauri events listened to with listen().
routes/+layout.svelte — Navigation Bar
The layout wraps every page in the application. It renders the persistent navigation bar at the t...
routes/ — Pages
/ — Dashboard (Home) File: routes/+page.svelte The main operator screen. A CSS grid layout combin...
types.ts — Types
Shared TypeScript types used across the frontend. Sample — represents a single science sample col...
state.svelte.js — Global State
state.svelte.js is the single source of truth for shared reactive state that needs to be accessib...