Files
Dashboard/features/dashboard/components/layout/navigation.ts
T
dejanandClaude Opus 5 b8bf987d0e feat(dashboard): Analytics-Dashboard als Gestaltungsvorlage zur Übergabe
UI/UX-Prototyp der Analytics-Dashboards in HiveGrid, fachlich auf einen
SHK-/Handwerksbetrieb zugeschnitten. Ziel ist die Übergabe an die Entwicklung,
nicht der Produktivbetrieb.

Inhalt: sechs Seiten (Übersicht, Finanzen, Aufträge, Kunden, Team, Komponenten),
26 KPIs, neun Chart-Bausteine, Filtersystem mit seitenabhängiger Relevanz und ein
deterministischer Demo-Datensatz (420 Kunden, 1.900 Aufträge, Stichtag 30.07.2026).

Drei Quellen sind zusammengeführt: die fachliche Planung mit dem Branchenpartner
(Januar 2026), die Subframe-Komponentenbibliothek aus dem HiveGrid-Pitch und
IBM Carbon Data Visualization für die Diagrammregeln. Herkunft und bewusste
Abweichungen stehen in docs/HERKUNFT.md.

Dokumentation: README, HANDOVER (was echte Logik braucht), docs/DESIGN-SYSTEM,
KPI-KATALOG, DATENMODELL, NAVIGATION, HERKUNFT, ZIELSYSTEM (Einbauort in
HiveGrid Cloud) und LEITPLANKEN (welche Cloud-Screens als Vorbild taugen).

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01QPeZNwSeU7qG3RRCwaxEZX
2026-08-29 17:25:20 +02:00

76 lines
1.9 KiB
TypeScript

import type { SeitenId } from "../../data/filtering";
export interface NavEintrag {
id: SeitenId | "komponenten";
href: string;
label: string;
/** Icon-Name aus @subframe/core (Feather-Set). */
icon: string;
beschreibung: string;
}
/**
* Navigationsstruktur.
*
* Vier Analyse-Seiten kommen direkt aus REQUIREMENTS-analytics.md
* (Übersicht, Finanzen, Aufträge, Kunden). "Team" war dort als v2 markiert,
* ist hier aber enthalten, weil Auslastung im Handwerk die Kennzahl ist,
* nach der Betriebe steuern. "Komponenten" ist reine Entwickler-Doku.
*/
export const NAV_GRUPPEN: { titel: string; eintraege: NavEintrag[] }[] = [
{
titel: "Analyse",
eintraege: [
{
id: "uebersicht",
href: "/",
label: "Übersicht",
icon: "LayoutDashboard",
beschreibung: "Alle Kernkennzahlen auf einen Blick",
},
{
id: "finanzen",
href: "/finanzen",
label: "Finanzen",
icon: "Euro",
beschreibung: "Umsatz, Rechnungen, Zahlungseingang",
},
{
id: "auftraege",
href: "/auftraege",
label: "Aufträge",
icon: "ClipboardList",
beschreibung: "Pipeline, Status, Termine",
},
{
id: "kunden",
href: "/kunden",
label: "Kunden",
icon: "Users",
beschreibung: "Akquise, Quellen, Bestand",
},
{
id: "team",
href: "/team",
label: "Team",
icon: "HardHat",
beschreibung: "Auslastung und Produktivität der Monteure",
},
],
},
{
titel: "Entwicklung",
eintraege: [
{
id: "komponenten",
href: "/komponenten",
label: "Komponenten",
icon: "Component",
beschreibung: "Bausteine, Regeln und Übergabehinweise",
},
],
},
];
export const ALLE_SEITEN = NAV_GRUPPEN.flatMap((g) => g.eintraege);