From 5655b77a246654c48b181f8908070bbb3ee27b93 Mon Sep 17 00:00:00 2001 From: Michael Hermann Date: Mon, 23 Mar 2026 14:02:08 +0100 Subject: [PATCH] init: Shared Branding-Tokens, Logo-Assets und Schriftart MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Single Source of Truth für alle Hammerpreis-Projekte: - tokens.css: CSS Custom Properties (Farben, Spacing, Radien, Schatten, Typo) - base.css: Google Fonts Import (Jost + JetBrains Mono) - Logo-SVGs: Symbol, Vollversion, Favicon, OG-Image Made-with: Cursor --- README.md | 47 +++++++++++++++++++++++++++++++ base.css | 1 + favicon.svg | 6 ++++ logo-full.svg | 1 + logo-symbol.svg | 9 ++++++ og-image.svg | 25 +++++++++++++++++ tokens.css | 75 +++++++++++++++++++++++++++++++++++++++++++++++++ 7 files changed, 164 insertions(+) create mode 100644 README.md create mode 100644 base.css create mode 100644 favicon.svg create mode 100644 logo-full.svg create mode 100644 logo-symbol.svg create mode 100644 og-image.svg create mode 100644 tokens.css diff --git a/README.md b/README.md new file mode 100644 index 0000000..242c429 --- /dev/null +++ b/README.md @@ -0,0 +1,47 @@ +# Hammerpreis Branding + +Shared Design-Tokens und Logo-Assets für alle Hammerpreis-Projekte. + +## Einbindung als Git-Submodul + +```bash +git submodule add https://git.michael-hermann.de/michaelhermannadmin/branding_hammerpreis.git branding +``` + +### CSS importieren + +```css +@import '../branding/base.css'; /* Font-Import (Jost + JetBrains Mono) */ +@import '../branding/tokens.css'; /* Alle CSS Custom Properties */ +``` + +## Farbpalette + +| Rolle | Variable | Hex | +|---|---|---| +| **Primary** | `--color-primary` | `#071635` | +| Primary Light | `--color-primary-light` | `#1B2A49` | +| Primary Dark | `--color-primary-dark` | `#040d20` | +| **Accent** | `--color-accent` | `#FF6B35` | +| Accent Light | `--color-accent-light` | `#ff8a5c` | +| Accent Dark | `--color-accent-dark` | `#e55a24` | +| **Kunde** | `--color-customer` | `#4DBEEE` | +| **Handwerker** | `--color-craftsman` | `#6B7FA9` | + +## Schriftart + +**Jost** (Google Fonts) -- importiert via `base.css`. + +## Logo-Assets + +| Datei | Verwendung | +|---|---| +| `logo-symbol.svg` | 3-Hausdach-Symbol, fuer Header und kleine Kontexte | +| `logo-full.svg` | Vollstaendiges Logo mit Schriftzug (weiss auf dunkel) | +| `favicon.svg` | 32x32 Favicon | +| `og-image.svg` | 1200x630 Open-Graph-Bild | + +## Branding aktualisieren + +1. Aenderungen hier committen und pushen +2. In jedem UI-Repo: `git submodule update --remote branding && git add branding && git commit -m "chore: branding update" && git push` diff --git a/base.css b/base.css new file mode 100644 index 0000000..768555f --- /dev/null +++ b/base.css @@ -0,0 +1 @@ +@import url('https://fonts.googleapis.com/css2?family=Jost:ital,wght@0,100..900;1,100..900&family=JetBrains+Mono:wght@400;500&display=swap'); diff --git a/favicon.svg b/favicon.svg new file mode 100644 index 0000000..79d7eca --- /dev/null +++ b/favicon.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/logo-full.svg b/logo-full.svg new file mode 100644 index 0000000..d829426 --- /dev/null +++ b/logo-full.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/logo-symbol.svg b/logo-symbol.svg new file mode 100644 index 0000000..e94be52 --- /dev/null +++ b/logo-symbol.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/og-image.svg b/og-image.svg new file mode 100644 index 0000000..52704a5 --- /dev/null +++ b/og-image.svg @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + + + + + Hammerpreis + KI-gestützte Angebotserstellung für Bauprojekte + + + + diff --git a/tokens.css b/tokens.css new file mode 100644 index 0000000..cc25509 --- /dev/null +++ b/tokens.css @@ -0,0 +1,75 @@ +:root { + /* Brand Colors */ + --color-primary: #071635; + --color-primary-light: #1B2A49; + --color-primary-dark: #040d20; + + --color-accent: #FF6B35; + --color-accent-light: #ff8a5c; + --color-accent-dark: #e55a24; + + /* Semantic Colors */ + --color-success: #059669; + --color-success-light: #10b981; + --color-warning: #d97706; + --color-warning-light: #f59e0b; + --color-error: #dc2626; + --color-error-light: #ef4444; + + /* Surface Colors */ + --color-bg: #f8fafc; + --color-bg-elevated: #ffffff; + --color-bg-muted: #f1f5f9; + --color-border: #e2e8f0; + --color-border-light: #f1f5f9; + + /* Text Colors */ + --color-text: #1e293b; + --color-text-secondary: #64748b; + --color-text-muted: #94a3b8; + --color-text-inverse: #ffffff; + + /* Role Colors */ + --color-customer: #4DBEEE; + --color-customer-light: #7dd1f3; + --color-craftsman: #6B7FA9; + --color-craftsman-light: #8e9ec0; + + /* Shadows */ + --shadow-sm: 0 1px 2px 0 rgb(0 0 0 / 0.05); + --shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1); + --shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1); + --shadow-xl: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1); + + /* Radii */ + --radius-sm: 6px; + --radius-md: 10px; + --radius-lg: 16px; + --radius-full: 9999px; + + /* Spacing */ + --space-xs: 0.25rem; + --space-sm: 0.5rem; + --space-md: 1rem; + --space-lg: 1.5rem; + --space-xl: 2rem; + --space-2xl: 3rem; + + /* Transitions */ + --transition-fast: 150ms ease; + --transition-base: 250ms ease; + --transition-slow: 350ms ease; + + /* Typography */ + --font-sans: 'Jost', system-ui, -apple-system, sans-serif; + --font-mono: 'JetBrains Mono', monospace; + + --text-xs: 0.75rem; + --text-sm: 0.875rem; + --text-base: 1rem; + --text-lg: 1.125rem; + --text-xl: 1.25rem; + --text-2xl: 1.5rem; + --text-3xl: 1.875rem; + --text-4xl: 2.25rem; +}