feat: initial Racecraft web client v0.1.0
Vue 3 + TypeScript + Vite web client for rusty-telemetry. - Dashboard with system status, live feeds, quick actions - Live telemetry view with real-time gauges (speed/RPM/gear) - Session management (create, run, complete, analyze) - Shift point analysis with Chart.js visualizations - Track map with Canvas 2D boundary rendering - Typed API client for all 19 REST endpoints - Dark theme, network-accessible via Vite 0.0.0.0 bind
This commit is contained in:
commit
cf9af73281
27 changed files with 5123 additions and 0 deletions
42
src/router/index.ts
Normal file
42
src/router/index.ts
Normal file
|
|
@ -0,0 +1,42 @@
|
|||
import { createRouter, createWebHistory } from 'vue-router'
|
||||
|
||||
const router = createRouter({
|
||||
history: createWebHistory(import.meta.env.BASE_URL),
|
||||
routes: [
|
||||
{
|
||||
path: '/',
|
||||
name: 'dashboard',
|
||||
component: () => import('@/views/DashboardView.vue'),
|
||||
},
|
||||
{
|
||||
path: '/live',
|
||||
name: 'live',
|
||||
component: () => import('@/views/LiveView.vue'),
|
||||
},
|
||||
{
|
||||
path: '/sessions',
|
||||
name: 'sessions',
|
||||
component: () => import('@/views/SessionsView.vue'),
|
||||
},
|
||||
{
|
||||
path: '/sessions/:id',
|
||||
name: 'session-detail',
|
||||
component: () => import('@/views/SessionDetailView.vue'),
|
||||
props: true,
|
||||
},
|
||||
{
|
||||
path: '/analysis/shift-points/:id',
|
||||
name: 'shift-points',
|
||||
component: () => import('@/views/ShiftPointsView.vue'),
|
||||
props: true,
|
||||
},
|
||||
{
|
||||
path: '/analysis/track-map/:id',
|
||||
name: 'track-map',
|
||||
component: () => import('@/views/TrackMapView.vue'),
|
||||
props: true,
|
||||
},
|
||||
],
|
||||
})
|
||||
|
||||
export default router
|
||||
Loading…
Add table
Add a link
Reference in a new issue