Knowledge base + grouped, reordered sidebar
Adds an in-app Knowledge base (route /help): 15 searchable, expandable how-to articles with step-by-step guides and examples (concepts, A-to-Z setup, the review inbox, the handoff + memory, the libraries, analytics, governance, troubleshooting), rendered as markdown. Reorganizes the sidebar into UX-ordered groups with section labels — Get started · Work (Board/Team/Cartable/Reviews) · Organization (Structure/Org chart/Members) · AI & libraries (AI seats/Skills/Agent profiles/Product profiles) · Insights (Performance/Analytics) · Help (Knowledge base). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -2,6 +2,7 @@ import type { ReactNode } from 'react'
|
||||
import { Link, useLocation } from 'react-router'
|
||||
import {
|
||||
BookMarked,
|
||||
BookOpen,
|
||||
BookUser,
|
||||
Bot,
|
||||
Boxes,
|
||||
@@ -45,21 +46,32 @@ export function AppShell({ children }: { children: ReactNode }) {
|
||||
|
||||
<Separator className="bg-sidebar-border" />
|
||||
|
||||
<nav className="flex flex-1 flex-col gap-1 p-3">
|
||||
<nav className="flex flex-1 flex-col gap-0.5 overflow-y-auto p-3">
|
||||
<NavItem icon={Rocket} label="Get started" to="/start" />
|
||||
|
||||
<NavSection label="Work" />
|
||||
<NavItem icon={LayoutDashboard} label="Board" to="/" />
|
||||
<NavItem icon={Sparkles} label="Team" to="/team" />
|
||||
<NavItem icon={Inbox} label="Cartable" to="/cartable" />
|
||||
<NavItem icon={ShieldCheck} label="Review inbox" to="/reviews" />
|
||||
<NavItem icon={Bot} label="AI seats" to="/seats" />
|
||||
<NavItem icon={BookUser} label="Agent profiles" to="/agent-profiles" />
|
||||
<NavItem icon={BookMarked} label="Skills" to="/skills" />
|
||||
<NavItem icon={Package} label="Product profiles" to="/product-profiles" />
|
||||
<NavItem icon={Network} label="Org chart" to="/org" />
|
||||
|
||||
<NavSection label="Organization" />
|
||||
<NavItem icon={Boxes} label="Structure" to="/structure" />
|
||||
<NavItem icon={Network} label="Org chart" to="/org" />
|
||||
<NavItem icon={Users} label="Members" to="/members" />
|
||||
|
||||
<NavSection label="AI & libraries" />
|
||||
<NavItem icon={Bot} label="AI seats" to="/seats" />
|
||||
<NavItem icon={BookMarked} label="Skills" to="/skills" />
|
||||
<NavItem icon={BookUser} label="Agent profiles" to="/agent-profiles" />
|
||||
<NavItem icon={Package} label="Product profiles" to="/product-profiles" />
|
||||
|
||||
<NavSection label="Insights" />
|
||||
<NavItem icon={Gauge} label="Performance" to="/performance" />
|
||||
<NavItem icon={ChartColumn} label="Analytics" to="/analytics" />
|
||||
|
||||
<NavSection label="Help" />
|
||||
<NavItem icon={BookOpen} label="Knowledge base" to="/help" />
|
||||
</nav>
|
||||
|
||||
<Separator className="bg-sidebar-border" />
|
||||
@@ -83,6 +95,14 @@ export function AppShell({ children }: { children: ReactNode }) {
|
||||
)
|
||||
}
|
||||
|
||||
function NavSection({ label }: { label: string }) {
|
||||
return (
|
||||
<div className="px-3 pb-1 pt-4 text-[10px] font-semibold uppercase tracking-wider text-sidebar-foreground/45">
|
||||
{label}
|
||||
</div>
|
||||
)
|
||||
}
|
||||
|
||||
function NavItem({
|
||||
icon: Icon,
|
||||
label,
|
||||
|
||||
Reference in New Issue
Block a user