Zum Inhalt springen

Navigation

Navigation

App-Nav, Docs-Nav und Shell-Nav getrennt.

Drei getrennte Navigations-Schichten. Nicht vermischen.

SSOT: manifest.ts pro App + @addxion/xi/nav.

Jede Consumer-App definiert ihre Sektionen deklarativ. Alle nutzen @addxion/xi/nav mit eigenem Manifest und Kontext-Variablen (Rolle, Grants, Host).

// süper/src/manifest.ts
export const appManifest = {
id: "super",
sections: [
{ id: "theorie-pruefung", href: "/theorie-pruefung", label: "Theorie & Prüfung", roles: ["student"], home: true, nav: true },
],
};

Live (Juli 2026):

AppManifestxi-nav
süpersrc/manifest.tsBottomNav + Command Palette
addxion.aisrc/manifest.tsCommand Menu

Verwendung:

  • Home-Hub Karten
  • Bottom-Nav / Tab-Bar
  • Command Palette Quick-Nav
  • Rollen- und Grant-Filter
  • Federation: Cross-App Destinations in Command Palettes (Gruppe „Wechsel zu“)

@addxion/xi/nav lädt Manifest, filtert nach Rolle und optional app_grant. Labels und hrefs kommen aus dem Manifest; Icons werden in der Consumer-Shell gemappt (Iconography).

SSOT: Frontmatter und Sidebar-Konfiguration in addxion-docs.

Das ist Content-Nav: welche Markdown-Seite, welches Kapitel. Kein xi-nav.

AspektDocs-Navxi-nav
ZweckDokumentation lesenApp bedienen
DatenquelleMDX + astro.config sidebarmanifest.ts
PackageStarlight / @addxion/starlight@addxion/xi/nav
URL-Prefix/docs/...App-Routen (/, /analysen, …)

Die linke Sidebar in addxion-docs listet Dokumentations-Kapitel (Neon, XI, Behavior, …). Sie wird nicht durch App-Manifeste ersetzt.

@addxion/shell Command Palette ist in addxion-docs eingebunden:

Quelle in der PaletteStatusZweck
Starlight Content-Index (docs-pages.ts)LiveDocs-Seiten suchen
@addxion/xi/nav (federated)Offen (optional)Produkt-Routen springen
Nutzer in addxion.com/docs
→ Sidebar: Content-Nav (Starlight, SSOT)
→ Command Palette:
"manifest" → /docs/xi/guidance/manifests ✓
"analysen" → https://süper.app/analysen (xi federated — noch nicht in Docs-Palette)

Die Palette ergänzt, ersetzt die Sidebar nicht.

SSOT: @addxion/shell.

App-Shell rendert Navigation, definiert sie nicht:

manifest.ts → @addxion/xi/nav (filter, sort) → @addxion/shell (BottomNav, CommandPalette, PageHeader)
KomponenteNav-Quelle
BottomNavgefilterte sections mit nav: true
CommandPalettexi-nav + optional Docs-Index (in Docs-Kontext)
HomeHubsections mit home: true
PageHeaderaktuelle Route → Label aus Manifest

PageHeader ist strukturell in @addxion/shell definiert — nicht pro App. Unterschiedliche Titel zwischen süper und addxion.ai kommen ausschließlich aus unterschiedlichen manifest.ts-Einträgen, nicht aus lokalen Header-Implementierungen. Siehe PageHeader — Cross-App-Sync.

addxion-docs wird separat als Cloudflare Pages deployt, nicht als Subfolder-Build von addxion-com.

AspektEntscheidung
Repoaddxion-docs (SSOT)
BuildAstro Starlight → static
URLaddxion.com/docs/* (Routing/DNS auf Docs-Pages-Projekt)
Marketingaddxion-com bleibt eigenständig (/, /#produkte, CMS)

addxion-com hostet Marketing und CMS. Die technische Dokumentation lebt und deployt aus addxion-docs.

Protokoll-Konventionen in @addxion/xi/protocol:

  • Produkt-URLs (super.app, addxion.ai, addxion.com)
  • Deep-Link-Format
  • Grant-Check vor Cross-App-Navigation

Keine hardcodierten URLs in App-Shell-Komponenten.

  • home-sections.tssüper/src/manifest.ts
  • app-actions.tsaddxion-ai/src/manifest.ts
  • @addxion/xi/nav Package angelegt
  • App-Shell-Komponenten auf xi-nav umgestellt (süper + addxion.ai)
  • Content aus addxion-com nach addxion-docs migriert
  • addxion-docs CF Pages Deploy + addxion.com/docs Routing
  • Command Palette in Docs (Content-Index)
  • xi-federation in Docs-Palette (optional, Phase 6.3 Rest)
  • PageHeader pro App duplizieren oder mit Layout/CSS überschreiben
  • Seitentitel in Layouts hardcoden statt resolveSection(manifest, pathname)
  • Nav-Items direkt in BottomNav.tsx hardcoden
  • Docs-Sidebar für App-Tabs missbrauchen
  • Separate Nav-Implementierung pro App ohne Manifest und xi-nav
  • @addxion/xi in drei separate Repos aufteilen
  • Docs-Build in addxion-com behalten, wenn addxion-docs SSOT ist
IDWahrheit
T-NAV-MANIFESTNav aus manifest.ts + xi/nav
T-NAV-THREEDrei Nav-Schichten: xi, Starlight, Shell
T-NAV-DOCSDocs-Sidebar = Content-Nav, kein xi-nav
T-SHELL-PAGEHEADERPageHeader-Struktur in Shell, Titel im Manifest

Scope: Drei getrennte Nav-Schichten — xi-nav, Starlight, Shell-Rendering.

  • App-Nav: manifest.ts + @addxion/xi/nav, nie in BottomNav hardcoden
  • Docs-Nav: Starlight-Sidebar, kein xi-nav
  • Shell rendert Nav, definiert sie nicht
  • PageHeader-Titel aus Manifest, Struktur aus Shell