import { BrowserRouter, Routes, Route } from 'react-router-dom' import { useEffect, useState } from 'react' import { invoke } from '@tauri-apps/api/core' import './styles/App.css' function App() { const [backendStatus, setBackendStatus] = useState<'checking' | 'running' | 'stopped' | 'error'>('checking') const [version, setVersion] = useState('') useEffect(() => { // Get app version invoke('get_version').then(setVersion).catch(console.error) // Check backend status const checkBackend = async () => { try { const status = await invoke('get_backend_status') setBackendStatus(status.running ? 'running' : 'stopped') } catch { setBackendStatus('error') } } checkBackend() // Listen for backend events const unlistenReady = await window.__TAURI__.event.listen('backend:ready', () => setBackendStatus('running')) const unlistenStopped = await window.__TAURI__.event.listen('backend:stopped', () => setBackendStatus('stopped')) const unlistenError = await window.__TAURI__.event.listen('backend:error', () => setBackendStatus('error')) return () => { unlistenReady() unlistenStopped() unlistenError() } }, []) return (

AI Workplace

v{version}
} /> } /> } /> } />
) } function Dashboard() { return (

Dashboard

Quick Actions

Recent Conversations

No conversations yet

System Status

Backend {backendStatus}
) } function Chat() { return (

Chat

Select a conversation or start a new one