diff --git a/TaskTracker.Web/src/App.tsx b/TaskTracker.Web/src/App.tsx index 96f570f..0fb63bf 100644 --- a/TaskTracker.Web/src/App.tsx +++ b/TaskTracker.Web/src/App.tsx @@ -1,6 +1,20 @@ -function App() { - return
-

TaskTracker

-
+import { BrowserRouter, Routes, Route, Navigate } from 'react-router-dom' +import Layout from './components/Layout' +import Board from './pages/Board' +import Analytics from './pages/Analytics' +import Mappings from './pages/Mappings' + +export default function App() { + return ( + + + }> + } /> + } /> + } /> + } /> + + + + ) } -export default App diff --git a/TaskTracker.Web/src/components/Layout.tsx b/TaskTracker.Web/src/components/Layout.tsx new file mode 100644 index 0000000..f846fa3 --- /dev/null +++ b/TaskTracker.Web/src/components/Layout.tsx @@ -0,0 +1,67 @@ +import { useState } from 'react' +import { NavLink, Outlet } from 'react-router-dom' +import { LayoutGrid, BarChart3, Link, PanelLeftClose, PanelLeftOpen } from 'lucide-react' + +const navItems = [ + { to: '/board', label: 'Board', icon: LayoutGrid }, + { to: '/analytics', label: 'Analytics', icon: BarChart3 }, + { to: '/mappings', label: 'Mappings', icon: Link }, +] + +export default function Layout() { + const [collapsed, setCollapsed] = useState(false) + + return ( +
+ {/* Sidebar */} + + + {/* Main area */} +
+ {/* Top bar */} +
+

TaskTracker

+
+
+ + {/* Content */} +
+ +
+
+
+ ) +} diff --git a/TaskTracker.Web/src/pages/Analytics.tsx b/TaskTracker.Web/src/pages/Analytics.tsx new file mode 100644 index 0000000..c3145be --- /dev/null +++ b/TaskTracker.Web/src/pages/Analytics.tsx @@ -0,0 +1,7 @@ +export default function Analytics() { + return ( +
+

Analytics

+
+ ) +} diff --git a/TaskTracker.Web/src/pages/Board.tsx b/TaskTracker.Web/src/pages/Board.tsx new file mode 100644 index 0000000..b7c7e7e --- /dev/null +++ b/TaskTracker.Web/src/pages/Board.tsx @@ -0,0 +1,7 @@ +export default function Board() { + return ( +
+

Board

+
+ ) +} diff --git a/TaskTracker.Web/src/pages/Mappings.tsx b/TaskTracker.Web/src/pages/Mappings.tsx new file mode 100644 index 0000000..0810884 --- /dev/null +++ b/TaskTracker.Web/src/pages/Mappings.tsx @@ -0,0 +1,7 @@ +export default function Mappings() { + return ( +
+

Mappings

+
+ ) +}