branding: Icon-Zentrierung als eigener Schritt + Namensgebung erklaert

Zwei Ergaenzungen aus dem v0.4.0-Release.

Das Icon-Rezept war unvollstaendig. Es warnte davor, thumbnail() statt resize()
zu nehmen - aber nicht davor, das Motiv nach dem Beschneiden auch mittig zu
setzen. Genau das ging schief: 81 % Breite gefuellt, aber 3 % Rand oben und 40 %
unten, das Motiv klebte an der Oberkante. Faellt in runden und quadratischen
Icon-Slots sofort auf. Das vollstaendige Rezept steht jetzt da, dazu die Liste
aller elf Icon-Artefakte und wie man per Pruefsumme feststellt, ob eines
nachgezogen wurde und ein anderes nicht.

Die Namensgebung ist gespalten: ThreadNet auf Betriebssystem- und PWA-Ebene,
aXion1337.Chat im Client. Das folgt der Leitplanke aus vision/threadnet.md - das
Programm ist das Tool, die Instanz darin die Community. Wer nur eine der beiden
Stellen sieht, haelt es fuer eine Inkonsistenz und zieht es gerade; deshalb steht
jetzt ausdruecklich da, dass es keine ist.

Dazu die Attribution: seit v0.4.0 in Einstellungen -> Hilfe & Info unter der
Client-Version, bewusst NICHT im Kopiertext der Versionsangabe - der landet in
Fehlerberichten, dort ist die Fork-Herkunft nur Rauschen.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PKhFj1S3UdD6xL2fbWPeYj
This commit is contained in:
Thore Cimbal
2026-08-06 12:00:00 +00:00
co-authored by Claude Fable 5
parent d019bfedda
commit f1b60d815b
+52
View File
@@ -22,6 +22,32 @@ skalieren, nicht mit `thumbnail()` — Letzteres verkleinert nur und lässt das
in großen Icons als Briefmarke zurück (real passiert, siehe
[AAR 2026-08-02](../verfahren/aar/2026-08-02-wiki-und-desktop-clients.md)).
⚠️ **Und danach mittig setzen — das ist ein zweiter, eigener Schritt.** Beim ersten
Anlauf wurde nur beschnitten und skaliert: Das Motiv füllte 81 % der Breite, saß
aber mit 3 % Rand oben und 40 % unten an der Oberkante. In runden und quadratischen
Icon-Slots fällt das sofort auf. Korrigiert am 2026-08-06 auf 21 % oben wie unten.
**Das Rezept, das jetzt gilt:** Bounding-Box des Motivs ermitteln, darauf
beschneiden, auf ~81 % der Kantenlänge skalieren, auf einer quadratischen,
transparenten Fläche **mittig einsetzen**. Alle Größen aus *derselben* Quelldatei
ableiten — dann können sie nicht auseinanderlaufen.
### Wo überall Icons liegen
Elf Artefakte, alle aus einer Quelle (Stand 2026-08-06, `v0.4.0`):
| Ort | Was |
|---|---|
| `apps/web/res/vector-icons/` | 1024, 512, 180, 152, 144, 120, 24 px |
| `apps/desktop/build/icon.png` | App-/Installer-Icon |
| `apps/desktop/build/icon.ico` | Windows, 7 Größen von 16 bis 256 |
| `apps/desktop/build/icon.icns` | macOS, via `iconutil` aus einem `.iconset` |
| `apps/desktop/build/icon.icon/Assets/element.png` | Layer des macOS-Icon-Composers |
Prüfen lässt sich die Gleichheit über die Prüfsumme von `vector-icons/1024.png`
gegen `build/icon.png` — weichen sie ab, ist eine Seite nachgezogen worden und die
andere nicht.
## Paletten
### aXion1337 Dark — das Stammschema
@@ -86,11 +112,37 @@ Die übrigen Rollen (Flächenabstufungen, Username-Farben) sind aus diesen vier
Farben gemischt — so bleibt jedes Theme in sich stimmig, ohne dass Werte
dazuerfunden werden.
## Namensgebung: ThreadNet oder aXion1337.Chat?
**Beides, auf verschiedenen Ebenen — und das ist Absicht, kein Versehen.**
| Ebene | Name | Wo gesetzt |
|---|---|---|
| Betriebssystem, Startmenü, Installer, PWA | **ThreadNet** | `productName` in `apps/desktop/axion1337/build.json`, `name` in `apps/web/res/manifest.json` |
| in der Anwendung | **aXion1337.Chat** | `brand` in `element-values.yaml` (Prod) und `apps/desktop/axion1337/config.json` |
Die Leitplanke dahinter steht in [`vision/threadnet.md`](../vision/threadnet.md):
*ThreadNet ist das Tool, axion1337.chat die Community.* Das Programm heißt
ThreadNet — auch wenn es jemand für eine andere Instanz nutzt; die Gemeinschaft
darin heißt aXion1337.Chat.
⚠️ **Nicht „geradeziehen".** Wer nur eine der beiden Stellen sieht, hält es für
eine Inkonsistenz. Ist es nicht.
**Attribution:** „ThreadNet — powered by Element" steht seit `v0.4.0` in
*Einstellungen → Hilfe & Info*, direkt unter der Client-Version, verlinkt auf
element.io. Element Web steht unter der AGPL; ein Fork unter eigenem Namen ist
erlaubt, die Nennung ist die faire Form davon. Bewusst **nicht** im Kopiertext der
Versionsangabe — der landet in Fehlerberichten, dort ist die Fork-Herkunft nur
Rauschen.
## Wo was eingestellt ist
| Oberfläche | Ort | Anmerkung |
|---|---|---|
| Element/ThreadNet-Web | `apps/production/custom-configs/element-values.yaml` (gitops), `setting_defaults.custom_themes` | 17 Themes; Änderungen chirurgisch, **nie die YAML neu serialisieren** |
| Web-Icons + PWA | `apps/web/res/vector-icons/`, `apps/web/res/manifest.json` (ThreadNet-Web) | `theme_color` = `#ed4f4c`, die Markenfarbe — nicht Elements `#76CFA6` |
| Desktop-Icons | `apps/desktop/build/` (ThreadNet-Web) | `.png`, `.ico`, `.icns`, Layer-Asset — alle aus derselben Quelle |
| ThreadNet Desktop | `apps/desktop/axion1337/config.json` (ThreadNet-Web) | eigene Kopie derselben Themes — beim Ändern beide mitziehen |
| BookStack | *Settings → Customization*, getrennt für hell und dunkel | liegt in der Datenbank, **nicht im Repo** — schriftlich hier und in `theme/sorbs-palette.md` |
| BookStack (Feinschliff) | `theme/*.css` im Wiki-BookStack-Repo | nur Flächen, Text, Ränder — die sieben Farben oben gehören in die Oberfläche |