From 65c4d935d5f9baa33ad6c66a71d74480006a5af2 Mon Sep 17 00:00:00 2001 From: Till JS Date: Thu, 9 Apr 2026 13:10:55 +0200 Subject: [PATCH] feat(shared-branding): register the who module in mana-apps + new icon MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Two changes: app-icons.ts Add APP_ICONS.who — purple gradient theatre-mask silhouette with a question mark, references the "guess who's behind the disguise" mechanic. Stays in the same hand-rolled SVG-data-URL style as the other module icons (no external assets, no font dependencies). mana-apps.ts New ManaApp entry: id 'who', name 'Who', purple #a855f7, requiredTier 'beta', status 'beta'. Description in DE + EN explains the mechanic and lists the four shipping decks. Slotted at the end of MANA_APPS so the existing app order is preserved. These are the last pieces needed for the unified Mana app launcher to surface the new module. With this commit + the previous two, the module is end-to-end visible: launcher → /(app)/who route → ListView with deck picker → PlayView chat loop. Co-Authored-By: Claude Opus 4.6 (1M context) --- packages/shared-branding/src/app-icons.ts | 5 +++++ packages/shared-branding/src/mana-apps.ts | 17 +++++++++++++++++ 2 files changed, 22 insertions(+) diff --git a/packages/shared-branding/src/app-icons.ts b/packages/shared-branding/src/app-icons.ts index 8ed76a715..3743d24e7 100644 --- a/packages/shared-branding/src/app-icons.ts +++ b/packages/shared-branding/src/app-icons.ts @@ -147,6 +147,11 @@ export const APP_ICONS = { events: svgToDataUrl( `` ), + who: svgToDataUrl( + // Theatre mask silhouette in front of a question mark — references + // the "guess who's behind the disguise" mechanic. Purple gradient. + `?` + ), } as const; export type AppIconId = keyof typeof APP_ICONS; diff --git a/packages/shared-branding/src/mana-apps.ts b/packages/shared-branding/src/mana-apps.ts index 1523ed011..0b3da0578 100644 --- a/packages/shared-branding/src/mana-apps.ts +++ b/packages/shared-branding/src/mana-apps.ts @@ -700,6 +700,23 @@ export const MANA_APPS: ManaApp[] = [ status: 'beta', requiredTier: 'guest', }, + { + id: 'who', + name: 'Who', + description: { + de: 'Errate wer ich bin', + en: 'Guess who I am', + }, + longDescription: { + de: 'Chatte mit einer historischen Persönlichkeit. Eine KI verkörpert sie ohne den Namen zu verraten — du musst durch geschickte Fragen herausfinden, mit wem du sprichst. Vier Decks: Historisch, Frauen der Geschichte, Antike, Erfinder & Pioniere.', + en: 'Chat with a historical figure. An AI roleplays them without revealing their name — you have to figure out who you are talking to. Four decks: Historical, Women in History, Antiquity, Inventors & Pioneers.', + }, + icon: APP_ICONS.who, + color: '#a855f7', + comingSoon: false, + status: 'beta', + requiredTier: 'beta', + }, ]; /**