"use client"; import Link from "next/link"; import { usePathname } from "next/navigation"; import { cn } from "@/lib/utils"; import { LayoutDashboard, Activity, Box, Map, FileCode, BarChart3, Settings, HelpCircle, } from "lucide-react"; import { ScrollArea } from "@/components/ui/scroll-area"; import { Separator } from "@/components/ui/separator"; import { Button } from "@/components/ui/button"; interface ProjectSidebarProps { projectId: string; } const menuItems = [ { title: "Overview", icon: LayoutDashboard, href: "/overview", description: "Project dashboard and stats", }, { title: "Sessions", icon: Activity, href: "/sessions", description: "AI coding sessions", }, { title: "Features", icon: Box, href: "/features", description: "Feature planning and tracking", }, { title: "API Map", icon: Map, href: "/api-map", description: "Auto-generated API docs", }, { title: "Architecture", icon: FileCode, href: "/architecture", description: "Living architecture docs", }, { title: "Analytics", icon: BarChart3, href: "/analytics", description: "Costs and metrics", }, ]; export function ProjectSidebar({ projectId }: ProjectSidebarProps) { const pathname = usePathname(); return (
{/* Project Header */}

AI Proxy

Project Dashboard

{/* Navigation */}
{menuItems.map((item) => { const href = `/${projectId}${item.href}`; const isActive = pathname === href; return ( {item.title} ); })}
{/* Settings Section */}
Settings
{/* Footer */}
v1.0.0 Powered by AI
); }