'use client' /** * Brandbook - Corporate Design & Styleguide * * Compliance SDK Brandbook mit: * - Violet/Purple Farbschema * - Compliance-spezifischen Komponenten * - Inter Font Family */ import { useState } from 'react' // Primary brand color (Violet) const PRIMARY_COLORS = { name: 'Primary (Violet)', description: 'Haupt-Markenfarbe fuer Buttons, Links und Akzente im Compliance SDK', shades: [ { name: '50', value: '#f5f3ff', text: 'dark' }, { name: '100', value: '#ede9fe', text: 'dark' }, { name: '200', value: '#ddd6fe', text: 'dark' }, { name: '300', value: '#c4b5fd', text: 'dark' }, { name: '400', value: '#a78bfa', text: 'dark' }, { name: '500', value: '#8b5cf6', text: 'light' }, { name: '600', value: '#7c3aed', text: 'light' }, { name: '700', value: '#6d28d9', text: 'light' }, { name: '800', value: '#5b21b6', text: 'light' }, { name: '900', value: '#4c1d95', text: 'light' }, ], } // Accent brand color (Purple) - for highlights and compliance accents const ACCENT_COLORS = { name: 'Accent (Purple)', description: 'Akzentfarbe fuer Logo-Gradient und Compliance-Highlights', shades: [ { name: '50', value: '#faf5ff', text: 'dark' }, { name: '100', value: '#f3e8ff', text: 'dark' }, { name: '200', value: '#e9d5ff', text: 'dark' }, { name: '300', value: '#d8b4fe', text: 'dark' }, { name: '400', value: '#c084fc', text: 'dark' }, { name: '500', value: '#a855f7', text: 'light' }, { name: '600', value: '#9333ea', text: 'light' }, { name: '700', value: '#7e22ce', text: 'light' }, { name: '800', value: '#6b21a8', text: 'light' }, { name: '900', value: '#581c87', text: 'light' }, ], } // Category colors for navigation and modules const CATEGORY_COLORS = [ { id: 'dsgvo', name: 'DSGVO-Grundlagen (Violet)', description: 'Datenschutz, VVT, DSFA, TOM, Einwilligungen', main: '#7c3aed', shades: [ { name: '100', value: '#ede9fe', text: 'dark' }, { name: '500', value: '#8b5cf6', text: 'light' }, { name: '600', value: '#7c3aed', text: 'light' }, { name: '700', value: '#6d28d9', text: 'light' }, ], }, { id: 'compliance', name: 'Compliance-Management (Purple)', description: 'Audit, Controls, Requirements, Risks', main: '#9333ea', shades: [ { name: '100', value: '#f3e8ff', text: 'dark' }, { name: '500', value: '#a855f7', text: 'light' }, { name: '600', value: '#9333ea', text: 'light' }, { name: '700', value: '#7e22ce', text: 'light' }, ], }, { id: 'ai', name: 'KI & Automatisierung (Teal)', description: 'AI Act, Screening, RAG, Advisory Board', main: '#14b8a6', shades: [ { name: '100', value: '#ccfbf1', text: 'dark' }, { name: '500', value: '#14b8a6', text: 'light' }, { name: '600', value: '#0d9488', text: 'light' }, { name: '700', value: '#0f766e', text: 'light' }, ], }, { id: 'documents', name: 'Dokumente & Legal (Orange)', description: 'Document Generator, Notfallplan, Cookie-Banner', main: '#f97316', shades: [ { name: '100', value: '#ffedd5', text: 'dark' }, { name: '500', value: '#f97316', text: 'light' }, { name: '600', value: '#ea580c', text: 'light' }, { name: '700', value: '#c2410c', text: 'light' }, ], }, { id: 'vendor', name: 'Vendor & Extern (Green)', description: 'Lieferanten-Compliance, DSMS, Import', main: '#22c55e', shades: [ { name: '100', value: '#dcfce7', text: 'dark' }, { name: '500', value: '#22c55e', text: 'light' }, { name: '600', value: '#16a34a', text: 'light' }, { name: '700', value: '#15803d', text: 'light' }, ], }, { id: 'development', name: 'Entwicklung (Slate)', description: 'Docs, Screen Flow, Brandbook', main: '#64748b', shades: [ { name: '100', value: '#f1f5f9', text: 'dark' }, { name: '500', value: '#64748b', text: 'light' }, { name: '600', value: '#475569', text: 'light' }, { name: '700', value: '#334155', text: 'light' }, ], }, ] // Semantic colors const SEMANTIC_COLORS = { success: { name: 'Success (Emerald)', shades: [ { name: '100', value: '#d1fae5', text: 'dark' }, { name: '500', value: '#10b981', text: 'light' }, { name: '600', value: '#059669', text: 'light' }, ], }, warning: { name: 'Warning (Amber)', shades: [ { name: '100', value: '#fef3c7', text: 'dark' }, { name: '500', value: '#f59e0b', text: 'dark' }, { name: '600', value: '#d97706', text: 'light' }, ], }, danger: { name: 'Danger (Red)', shades: [ { name: '100', value: '#fee2e2', text: 'dark' }, { name: '500', value: '#ef4444', text: 'light' }, { name: '600', value: '#dc2626', text: 'light' }, ], }, neutral: { name: 'Neutral (Slate)', shades: [ { name: '50', value: '#f8fafc', text: 'dark' }, { name: '100', value: '#f1f5f9', text: 'dark' }, { name: '200', value: '#e2e8f0', text: 'dark' }, { name: '300', value: '#cbd5e1', text: 'dark' }, { name: '400', value: '#94a3b8', text: 'dark' }, { name: '500', value: '#64748b', text: 'light' }, { name: '600', value: '#475569', text: 'light' }, { name: '700', value: '#334155', text: 'light' }, { name: '800', value: '#1e293b', text: 'light' }, { name: '900', value: '#0f172a', text: 'light' }, ], }, } const TYPOGRAPHY = { fontFamily: "'Inter', system-ui, -apple-system, sans-serif", weights: [ { weight: 400, name: 'Regular', usage: 'Fliesstext, Beschreibungen' }, { weight: 500, name: 'Medium', usage: 'Labels, Buttons, Navigation' }, { weight: 600, name: 'Semi-Bold', usage: 'Ueberschriften H3-H6, Card-Titel' }, { weight: 700, name: 'Bold', usage: 'Ueberschriften H1-H2, CTAs' }, ], sizes: [ { name: 'xs', size: '0.75rem (12px)', usage: 'Footnotes, Badges' }, { name: 'sm', size: '0.875rem (14px)', usage: 'Nebentext, Labels' }, { name: 'base', size: '1rem (16px)', usage: 'Fliesstext, Body' }, { name: 'lg', size: '1.125rem (18px)', usage: 'Lead Text' }, { name: 'xl', size: '1.25rem (20px)', usage: 'H4, Card Titles' }, { name: '2xl', size: '1.5rem (24px)', usage: 'H3' }, { name: '3xl', size: '1.875rem (30px)', usage: 'H2' }, { name: '4xl', size: '2.25rem (36px)', usage: 'H1, Hero' }, ], } const SPACING = [ { name: '1', value: '0.25rem (4px)', usage: 'Minimaler Abstand' }, { name: '2', value: '0.5rem (8px)', usage: 'Kompakter Abstand' }, { name: '3', value: '0.75rem (12px)', usage: 'Standard klein' }, { name: '4', value: '1rem (16px)', usage: 'Standard' }, { name: '6', value: '1.5rem (24px)', usage: 'Card Padding' }, { name: '8', value: '2rem (32px)', usage: 'Section Spacing' }, ] const VOICE_TONE = { attributes: [ 'Fachlich-praezise & Vertrauenswuerdig', 'DSGVO-konform & Rechtssicher', 'Klar & Strukturiert', 'Audit-tauglich & Nachvollziehbar', 'Modern & Professionell', ], doList: [ 'Fachbegriffe korrekt verwenden (Art. 30 DSGVO, TOM, DSFA)', 'Klare, strukturierte Formulierungen nutzen', 'Rechtsgrundlagen immer referenzieren', 'Handlungsanweisungen priorisiert darstellen', 'Vertraulichkeit und Datenschutz betonen', ], dontList: [ 'Rechtsbegriffe ungenau verwenden', 'Technisches Marketing-Speak', 'Compliance-Garantien ohne Einschraenkung', 'Informelle oder saloppe Sprache', 'Fehlende Quellenangaben bei Verordnungen', ], } function ColorSwatch({ color }: { color: { name: string; value: string; text: string } }) { const [copied, setCopied] = useState(false) const copyToClipboard = () => { navigator.clipboard.writeText(color.value) setCopied(true) setTimeout(() => setCopied(false), 2000) } return ( ) } export default function BrandbookPage() { const [activeTab, setActiveTab] = useState<'colors' | 'typography' | 'components' | 'logo' | 'voice'>('colors') return (
Corporate Design & Styleguide fuer BreakPilot Compliance SDK
{PRIMARY_COLORS.description}
{ACCENT_COLORS.description}
bg-gradient-to-br from-violet-500 to-purple-600
Violet (#8b5cf6) → Purple (#9333ea)
Jede Kategorie hat eine eigene Farbe fuer Navigation, Module und Akzente.
{cat.description}
Inter ist eine moderne, variable Sans-Serif Schrift, optimiert fuer Bildschirme. Sie ist unter der SIL Open Font License verfuegbar und frei fuer kommerzielle Nutzung.
Designer: Rasmus Andersson
Community-driven Icon Library
Alle verwendeten Schriftarten und Icons sind Open Source und fuer kommerzielle Nutzung freigegeben. Vollstaendige Dokumentation in der SBOM verfuegbar.
Fuer Pipeline-Checkpoints im SDK.
Fuer Risikobewertung in der Compliance-Pipeline.
{cat.description}
{/* Progress Bar */}
background: linear-gradient(to bottom right, #8b5cf6, #9333ea)
Primary → Accent (Violet → Purple)
"Gemaess Art. 30 DSGVO ist ein Verarbeitungsverzeichnis verpflichtend. Erfassen Sie hier alle Verarbeitungstaetigkeiten mit Rechtsgrundlage, Zweck und Empfaengerkategorien."
"Ihre DSFA fuer die KI-gestuetzte Dokumentenanalyse zeigt ein mittleres Risiko. Empfohlene Massnahme: Implementierung einer Pseudonymisierung vor der Verarbeitung."
"Unsere revolutionaere KI garantiert 100% DSGVO-Compliance und macht Datenschutzbeauftragte ueberfluessig."
"Hey, check mal die coolen neuen Compliance-Features! Einfach draufklicken und schon bist du DSGVO-konform!"
DSGVO-Compliance, Art. 37-39 Pflichten
GRC, Audit, Controls & Evidence
Pruefberichte, Nachweise, Checklisten
SDK-Integration, APIs, DevOps