# Kurbeler — Logo Der Name kommt vom Bauteil, das Zeichen auch: eine **Tretkurbel**. Kegeliger Arm, dick am Tretlager, dünn am Pedal, an beiden Enden eine Bohrung. Aus dieser einen Geometrie sind alle drei Varianten gebaut. | Ordner | Variante | | |---|---|---| | `kurbel-k/` | **Kurbel-K** | Das K *ist* die Kurbel: zwei Arme aus dem Tretlager. Buchstabe und Bauteil in einer Form. **Im Einsatz.** | | `kurbelarm/` | Kurbelarm | Ein einzelner Arm. Die ruhigste Lösung, braucht den Schriftzug daneben. | | `garnitur/` | Kurbelgarnitur | Beide Arme in einer Linie, 180°, wie sie sich am Rad gegenüberstehen. | ## Dateien je Variante | Datei | Wofür | |---|---| | `mark.svg` | Bildmarke allein, in `currentColor` | | `icon.svg` | App-Symbol: gelbe Kachel, Marke in Tinte | | `icon-dark.svg` | dasselbe umgekehrt, für dunkle Flächen | | `icon-maskable.svg` | randlos für Android, Marke im sicheren Bereich (62 %) | | `logo.svg` / `logo-dark.svg` | Marke und Schriftzug nebeneinander | | `logo-mono.svg` | dasselbe einfarbig, alles `currentColor` | | `icon-192.png`, `icon-512.png` | Raster für Betriebssysteme ohne SVG | ## Regeln - **Zwei Farben, nie drei.** Kurbelgelb `#eab308` und Tinte `#18181b`, in der einen oder der anderen Richtung. Kein Verlauf, kein Schatten. - **Die Bohrungen sind Löcher.** Sie liegen als gegenläufig gewickelte Kreise im selben Pfad, durch sie scheint der Untergrund. Nichts dahinterlegen, was nicht durchscheinen soll. - **Abstand zum Schriftzug**: ein Viertel der Markenhöhe. Darunter fällt die Kombination auseinander. - **Schriftzug**: Inter ExtraBold, Laufweite −0,023 em, in Kurven gewandelt (`word.d`). Als Pfad, damit er ohne Schriftdatei überall gleich aussieht. ## Neu bauen ```bash python3 design/logo/build.py ``` Braucht Inkscape (verschmilzt die Teilformen zu einem Umriss) und `rsvg-convert` (PNG). Das Skript legt alle Varianten neu an und kopiert die gesetzte — Kurbel-K — unter ihren Markennamen nach `frontend/static/`. Die Pfaddaten für die App stehen zusätzlich in `frontend/src/lib/brand.ts`; ändert sich die Form, muss die Datei mit den Werten aus `geometry.json` nachgezogen werden.