@mana/shared-types
Gemeinsame TypeScript-Typen für das Vereins-Monorepo — Wissens-Brücke zwischen Services und Apps.
@mana/shared-types hält die wenigen Typen, die wirklich quer durch
das Vereins-Monorepo geteilt werden — z.B. die JWT-Claim-Struktur, die
sowohl mana-auth als auch jeder JWT-konsumierende Service kennen
muss.
Der Disziplin folgend: was nicht hier hingehört, sind App- oder
Service-spezifische Typen (die gehören in ihre App-/Service-Pakete)
und Föderations-Vertrags-Typen (die gehören in
shared-share-protocol). „Shared-Types” als Sammeldepot wäre Anti-
Pattern; hier liegt nur, was tatsächlich plattform-weit geteilt wird.
Das ist eine kleine Quelle der Wahrheit. Klein zu bleiben ist hier Tugend.
Mitnehmen
Vereins-Pakete liegen auf der Vereins-eigenen Verdaccio-Registry.
Apps und Services-Repos haben dort ein .npmrc, das
den @mana/-Scope auf npm.mana.how routet.
pnpm add @mana/shared-types Auch nutzbar mit npm oder yarn — der Scope-Mechanismus ist Standard-npm-Verhalten. Wer den Verein nicht-mitgliedlich nutzen will, kann die Registry frei konfigurieren.
Worauf es sich bindet
- Klasse
- Klasse C — App-spezifisch oder Werkzeug, ohne plattform-weiten Vertrag.
- Sprache
- TypeScript
- Version
- v0.1.0
- Registry
- npm.mana.how — eigene Vereins-Registry, kein npmjs.com
- Lizenz
- Quelloffen — Details im Repo.
Was es für den Verein verkörpert
- LanglebigkeitBewährte Stacks, gute Doku.
- EigenbetriebEigene Infrastruktur, quelloffener Stack.
Was läuft, was nicht
Version: v0.1.0.
- Migration der Typen, die fest zu Services gehören, in shared-share-protocol oder eigene Schema-Pakete.
Weitere Pakete dieser Kategorie
Server-Foundation, Konfiguration, Sprach-Grundlagen.
- @mana/shared-honoHono-Server-Foundation — JWT-Auth-Middleware, Health-Endpoints, Admin-Routen, Fehlerbehandlung. Jeder Server-Service nutzt das.
- @mana/shared-drizzle-configDrizzle-ORM-Konfiguration-Factory für alle Vereins-Services — eine DB pro Service, schema-isoliert via pgSchema.
- @mana/shared-loggerLogging-Foundation für Mobile- und Web-Apps der Plattform — strukturiert, kontextualisierbar, datenschutz-konform.
- @mana/tsconfigGeteilte tsconfig-Bases — Web/SvelteKit und Hono+Bun-Server in zwei sauberen Voreinstellungen.
- @mana/shared-i18nInternationalisierungs-Helpers — Datumsformat, Pluralisierung, deutsche Schreibweisen. Heute deutsch-only, vorbereitet für mehr.
- @mana/shared-app-tplHono-Helpers für föderierte Vereins-Apps — Manifest-Serving, Share-Receive-Router, Tools-Router, DSGVO-Export.
@mana/shared-types ist eines von vielen Paketen, die der Verein selbst pflegt — eigene Bauteile auf eigener Registry, frei nachnutzbar.