godot-mana-kit
Die Kistli-Oberfläche: ein vollständiges Godot-Theme aus derselben Token-Quelle wie Web, iOS und Android — dieselbe Oberfläche in jedem Kistli.
Kopie mit Wächter
Kopiert statt verlinkt, damit das Projekt nach einem frischen Klon aufgeht. Ein Wächter im Prüflauf meldet, wenn die Kopie hinter der Quelle zurückbleibt.
./tools/kit-abgleich.sh holen
Landet unter addons/mana_kit/ im Projekt.
Achtundzwanzig Apps des Hauses teilen sich eine Oberfläche, und dieser Baustein ist sie. Er ist damit der meistbenutzte der fünf — mit grossem Abstand, und ohne dass ihn je etwas geprüft hätte.
Eine Quelle für vier Plattformen
Das Bemerkenswerte an diesem Kit sind nicht die Knöpfe, sondern woher ihre
Farben kommen. mana_tokens.gd wird erzeugt, nicht geschrieben — aus
derselben CSS-Token-Quelle, aus der auch das Web-Theme, die iOS-Farben und
die Android-Ressourcen entstehen. 26 Farbwelten, 12 Markentokens, hell und
dunkel, und die HSL→sRGB-Umrechnung ist pixelgleich zu den anderen drei
Plattformen.
Das ist die Sorte Arbeit, die man nur einmal macht und danach nie wieder sieht: ein Orange, das im Browser und auf der Quest verschieden aussieht, ist ein Fehler, den niemand meldet und jeder bemerkt.
Die Lizenz, die eine Sperre war
Bis zum 31. August 2026 stand dieses Kit auf AGPL-3.0 — gegen die Hausregel, die für Bausteine permissive Lizenzen verlangt. Solange das galt, durfte keine Fläche der Einzelfirma es verwenden, ohne selbst unter AGPL zu fallen. Seit der Umstellung auf MIT ist diese Sperre aufgehoben.
🛑 Der Befund dazu blieb danach noch einen Tag in vier Dokumenten stehen, darunter im Register, das ausdrücklich „seither unverändert“ behauptete. Die Messung hatte längst aufgehört, eine Abweichung zu melden — aber ein Schweigen liest niemand als Entwarnung. Wer eine Sperre aufhebt, muss die Stellen suchen, die sie ausgesprochen haben.
Warum Kopie und nicht Symlink
Der Baustein wird in die App kopiert. Das war nicht immer so: bis Ende
August hingen 33 Repos per committetem Symlink an libs/. Beim Test
wurden alle 33 geklont und eingelesen — 37 von 37 Symlinks zeigten ins
Leere, 31 der 33 Repos brachen ab, zusammen 1324 Fehler. Der Symlink zeigt
auf einen Nachbarpfad, den es nach dem Klonen nicht gibt, und auf der
eigenen Platte fällt das nie auf.
Godot hat keinen Paketverwalter; addons/ ist dafür gemacht, im Repo zu
liegen. Gemessen kostet das Kit 1,2 MB gepackt je Repo — die Grössensorge,
die zum Symlink geführt hatte, war unbegründet.
10 Bilder aus dem Katalog
-
Eine Bedienfläche aus dem Theme: die vier Knopf-Hierarchien nebeneinander, eine Segmentwahl, Karte und Werkzeugleiste. Nichts davon ist von Hand gefärbt.
-
Dieselbe Fläche dunkel — aus derselben Token-Quelle, kein zweiter Satz Farben.
-
26 Farbwelten, je Zeile die Marken-Tokens. Dieselben Werte speisen Web, iOS und Android.
-
Alle 34 Piktogramme. `flower`, `heart` und `star` importierten bis zum 2026-09-02 mit einem Viertel der Auflösung — auf diesem Blatt fiel es auf.
-
Dieselbe Fläche in der Welt „mana“.
-
… in „waldlichtung“.
-
… in „bodensee“.
-
… in „herbar“.
-
… in „twilight“.
-
… in „kreisel“.
Woraus er besteht
mana_tokens.gd- Autogeneriert aus der CSS-Token-Quelle in `@mana/themes`. 26 Farbwelten × 12 Markentokens, hell und dunkel, HSL→sRGB pixelgleich zu Web, iOS und Android. Nicht von Hand zu ändern.
ui_theme.gd- Baut daraus ein vollständiges `Theme` — Theme-Type-Variations für Knopfhierarchie, Panel-Varianten für Karte, Werkzeugleiste und Ablage, Abstands- und Radius-Tokens, Kinder-Malpalette.
Piktogramme- 34 SVG-Zeichen für die wiederkehrenden Handlungen der Kistli — Aufnahme, Stopp, Neustart, Stufen, Frage, Richtungen.
saf-plugin- Zugriff auf das Android-Dateisystem über das Storage Access Framework.
39 Projekte benutzen ihn
Gezählt, nicht behauptet: pnpm bausteine durchsucht jede
App im Baum nach Klassennamen des Bausteins und nach vendorierten
Kopien. Ein Baustein ohne Abnehmer wäre keiner, sondern eine
Bibliothek auf Vorrat. Stand: 2026-09-15.
- atemraum
- bauernhaus
- burg
- dehnhalt
- entdeckerkiste
- hallenkiste
- kegelkiste
- kistenregal
- kritzelkiste
- kullerkiste
- lawnhall
- legewerk
- malkiste
- malton
- Manatal
- merkkiste
- modellstand
- muehle
- murmelspike
- pipblock
- pipfold
- platzrunde
- riedhaus
- schmelze
- sjoelbox
- Solitär
- stapelkiste
- steinbruch
- sternwarte
- tanzkiste
- Tidyfall
- tussle
- Ur
- urglyph
- voxelkiste
- weiler
- weltkiste
- whirtray
- wuselkiste
Wem er gehört, was ihn prüft
- Lizenz
- MIT — Bausteine sind permissiv lizenziert, Anwendungen AGPL-3.0. Ein Baustein, der ansteckt, wäre keiner.
- Träger
- Der Verein
- Gebiet
- Oberfläche — Das Kistli-Theme aus derselben Token-Quelle wie Web, iOS und Android.
- Wache
-
addons/mana_kit/kit_smoke.gd— prüft ihn headless. - Katalog
-
addons/mana_kit/kit_katalog.gd— rendert seine Bauteile als Bilder.
🛑 Kein Link ins Repository: die Kit-Repos liegen auf der eigenen Forge und sind noch nicht öffentlich. Ein Link, der 404 antwortet, wäre schlechter als keiner.
Was er verkörpert
-
OffenheitCode und Mittelverwendung öffentlich.
-
LanglebigkeitBewährte Stacks, gute Doku.
-
AchtsamkeitKeine Engagement-Tricks.
Was offen ist
- `apps/dehnhalt` bindet ihn noch per Symlink ein statt als Kopie — läuft lokal, bricht nach dem Klonen.
- Die Lizenz des mitgelieferten ManaSaf-Binaries ist ungeklärt.
Ein Gebiet je Baustein
Die Trennung nach Fachgebiet ist der Grund, warum es fünf Repos sind und nicht eines.