Files
Atomizer/atomizer-dashboard/frontend/src/App.tsx

51 lines
1.6 KiB
TypeScript
Raw Normal View History

import { BrowserRouter, Routes, Route } from 'react-router-dom';
import { QueryClient, QueryClientProvider } from '@tanstack/react-query';
import { StudyProvider } from './context/StudyContext';
import { ClaudeTerminalProvider } from './context/ClaudeTerminalContext';
import { MainLayout } from './components/layout/MainLayout';
import { GlobalClaudeTerminal } from './components/GlobalClaudeTerminal';
import Home from './pages/Home';
2025-12-05 19:57:20 -05:00
import Setup from './pages/Setup';
import Dashboard from './pages/Dashboard';
2025-12-05 19:57:20 -05:00
import Analysis from './pages/Analysis';
import Results from './pages/Results';
const queryClient = new QueryClient({
defaultOptions: {
queries: {
staleTime: 5000,
refetchOnWindowFocus: false,
},
},
});
function App() {
return (
<QueryClientProvider client={queryClient}>
<StudyProvider>
<ClaudeTerminalProvider>
<BrowserRouter>
<Routes>
{/* Home page - no sidebar layout */}
<Route path="/" element={<Home />} />
{/* Study pages - with sidebar layout */}
<Route element={<MainLayout />}>
2025-12-05 19:57:20 -05:00
<Route path="setup" element={<Setup />} />
<Route path="dashboard" element={<Dashboard />} />
2025-12-05 19:57:20 -05:00
<Route path="analysis" element={<Analysis />} />
<Route path="results" element={<Results />} />
</Route>
</Routes>
{/* Global Claude Terminal - persists across navigation */}
<GlobalClaudeTerminal />
</BrowserRouter>
</ClaudeTerminalProvider>
</StudyProvider>
</QueryClientProvider>
);
}
export default App;