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:
soroush.asadi
2026-06-16 08:06:23 +03:30
parent 8a033a2a6f
commit c9be692d52
4 changed files with 449 additions and 6 deletions
+26 -6
View File
@@ -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,