Files
d4rkbot/docs/brand/README.md
T
D4rkst3randClaude Opus 5 0d7628f14e
Deploy / check (push) Canceled after 0s
Deploy / deploy (push) Canceled after 0s
Den Entwurf und das Logo-Original einsortieren
Drei Dateien lagen unversioniert im Wurzelverzeichnis herum. Alle drei
gehoeren ins Repo, nur nicht dorthin:

  logo.png                        -> docs/brand/logo.png
  ChatGPT Image 23. Juni 2025 ... -> docs/brand/studie-kopf-2025-06.png
  design_handoff_redesign/        -> docs/redesign/

logo.png ist NICHT irgendein Logo, sondern das Original, von dem
docs/brand/README.md die ganze Zeit spricht: "ein einziges Original, 2048x2048
mit Transparenz". Nachgerechnet statt geraten -- auf den Inhalt beschnitten
ergibt es 1986x1963, exakt die Masse von lockup.png. Es lag also die Quelle
der Marke unversioniert daneben.

Dabei aufgefallen und in der README vermerkt, nicht repariert: build.py liest
das Original ueber einen festen Pfad ausserhalb des Repos
(QUELLE = A:/Users/DAR/logo.png). Jetzt sind das zwei Kopien, die
auseinanderlaufen koennen. Umstellen kann nur, wer weiss, welche der beiden
gepflegt wird.

Das zweite Bild ist eine frueherere Kopf-Studie und nicht die Vorlage der
heutigen Marke -- andere Zeichnung, flacher, ohne Fell und Schulter. Sie wird
nirgends benutzt und liegt als Herkunft.

Vom Entwurfs-Paket ist der assets/-Ordner entfallen: er enthielt Kopien von
mark.png und lockup.png, die zwei Verzeichnisse weiter im Original liegen. Die
.dc.html-Referenzen zeigen jetzt auf ../brand/ und stellen das Logo weiter
dar, statt mit kaputten Bildern zurueckzubleiben. Der Kopf der README sagt
ausserdem, dass der Entwurf umgesetzt ist und wo bewusst abgewichen wurde --
sonst liest sich das Dokument in einem Jahr wie eine offene Aufgabe.

Dazu eine Zeile, die seit dem Redesign nicht mehr stimmte: build.py bezeichnet
(10, 10, 10) als "--bg der Marke". Das ist seit gestern #131316. Wirkt erst,
wenn jemand build.py laufen laesst -- die erzeugten Icons in frontend/public/
tragen bis dahin den alten Grund. Neu bauen konnte ich sie hier nicht, es gibt
weder Python noch Pillow auf dieser Maschine.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-18 15:19:49 +02:00

76 lines
3.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Marken-Dateien
Alles hier stammt aus einem einzigen Original: dem D4RKST3R-Logo in 2048×2048
mit Transparenz (Katzenkopf über dem Schriftzug-Banner).
## Was hier liegt
| Datei | Was | Wofür |
|---|---|---|
| `logo.png` | **das Original**, 2048×2048 mit Transparenz | Quelle für alles Weitere |
| `lockup.png` | volles Logo, auf den Inhalt beschnitten | Kopfzeilen, Discord-Banner, OG-Bilder |
| `mark.png` | nur der Katzenkopf, 1024×1024 | alles Quadratische — Favicon, Avatar |
| `build.py` | erzeugt beide plus die abgeleiteten Icons | Neubau nach Logo-Änderung |
| `studie-kopf-2025-06.png` | frühere Kopf-Studie, 636×636 | nirgends in Benutzung, liegt als Herkunft |
**Achtung beim Neubau:** `build.py` liest das Original noch über einen festen
Pfad ausserhalb des Repos (`QUELLE = A:/Users/DAR/logo.png`). Seit das Original
hier neben der Datei liegt, sind das zwei Kopien, die auseinanderlaufen können —
wer das Logo ändert, muss beide anfassen oder `QUELLE` auf `logo.png` umstellen.
## Warum zwei Fassungen
Das volle Lockup ist bei 16 oder 32 Pixeln unbrauchbar — der Schriftzug wird zu
einem orangen Balken. Für Favicon, Avatar und Navbar-Logo wird deshalb nur der
Kopf verwendet, mit Ohrenspitzen und etwas Schulter. Der Zuschnitt steht in
`build.py` als `KOPF` und wurde von Hand gegen drei Varianten geprüft: enger
schneidet die Ohren ab, weiter fängt schon den Banner ein.
## Warum SVG mit eingebettetem PNG
Gitea will `logo.svg` und `favicon.svg` — echte SVG-Dateien. Das Original ist
aber eine Rastergrafik mit Verläufen und Schattierung; nachvektorisieren würde
sie matschig machen. Deshalb wird das PNG in eine SVG-Hülle gelegt
(`<svg><image href="data:image/png;base64,…"/></svg>`). Das ist gültiges SVG,
Gitea nimmt es an, und es sieht aus wie das Original.
Die eingebettete Auflösung ist bewusst klein gehalten: das Navbar-Logo hängt an
jedem Seitenaufruf, 192 px reichen für eine Darstellung mit rund 30 px.
## Wohin die erzeugten Dateien gehen
`build.py` schreibt direkt an beide Ziele:
```
A:/eco/Gitea/data/gitea/public/assets/img/
logo.svg Navbar + App-Icon
favicon.svg Browser-Tab
favicon.png Rückfallebene, die Gitea als „alternate icon" setzt
apple-touch-icon.png iOS-Lesezeichen (180 px, deckend)
avatar_default.png Standardavatar für Konten ohne Bild (512 px)
frontend/public/
favicon.svg
apple-touch-icon.png
og-default.png Vorschaubild geteilter Links, 1200×630
src/bot/assets/
mark-card.png Wasserzeichen der Willkommens-Karte
```
`src/bot/assets/` statt `docs/` ist Absicht: das Dockerfile kopiert nur `src/`
und `frontend/dist/`, alles andere existiert im Container nicht.
Die Icons auf dunklem Grund sind **deckend** (`#0a0a0a`, abgerundet) — iOS legt
hinter transparente Lesezeichen sonst Schwarz oder Weiß, je nach Laune, und die
Katze ist selbst fast schwarz.
## Neu bauen
```bash
python docs/brand/build.py
```
Danach für Gitea `docker restart gitea` — die Dateien unter `custom/` werden
beim Start eingelesen. Fürs Frontend reicht der normale Build.