feat: Setup React Frontend (Issue #1)

- Initialize Vite + React + TypeScript project
- Install dependencies (React Router, Zustand, Axios, Tailwind CSS)
- Configure Tailwind CSS and PostCSS
- Create basic folder structure
- Setup ESLint and Prettier
- Create placeholder pages (Login, Dashboard, Logs, Alerts, etc.)
- Create Layout and ProtectedRoute components
- Add TypeScript types

Closes #1

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
Claude Code
2026-02-05 00:47:14 +03:00
parent 7043429150
commit be86fa226a
22 changed files with 460 additions and 0 deletions

37
frontend/src/App.tsx Normal file
View File

@@ -0,0 +1,37 @@
import { BrowserRouter as Router, Routes, Route, Navigate } from 'react-router-dom'
import Login from './pages/Login'
import Dashboard from './pages/Dashboard'
import LogsExplorer from './pages/LogsExplorer'
import AlertsManager from './pages/AlertsManager'
import PatternDetection from './pages/PatternDetection'
import Reports from './pages/Reports'
import Settings from './pages/Settings'
import Layout from './components/common/Layout'
import ProtectedRoute from './components/common/ProtectedRoute'
function App() {
return (
<Router>
<Routes>
{/* Public routes */}
<Route path="/login" element={<Login />} />
{/* Protected routes */}
<Route path="/" element={<ProtectedRoute><Layout /></ProtectedRoute>}>
<Route index element={<Navigate to="/dashboard" replace />} />
<Route path="dashboard" element={<Dashboard />} />
<Route path="logs" element={<LogsExplorer />} />
<Route path="alerts" element={<AlertsManager />} />
<Route path="patterns" element={<PatternDetection />} />
<Route path="reports" element={<Reports />} />
<Route path="settings" element={<Settings />} />
</Route>
{/* 404 */}
<Route path="*" element={<Navigate to="/dashboard" replace />} />
</Routes>
</Router>
)
}
export default App