28 Pakete — was die Apps gemeinsam nutzen.
Statt fremde npm-Abhängigkeiten zu jagen, baut der Verein die
wiederkehrenden Bauteile selbst und legt sie auf eine eigene
Registry. UI-Komponenten, Auth-Klienten, Event-Sync, Karten,
RSS — alles als @mana/*-Pakete auf
npm.mana.how. Frei nachnutzbar, von uns gepflegt.
- UI & Branding 7
Komponenten, Theming-Tokens, Icons, PWA-Foundation, Brand-Assets — die visuelle Sprache aller Apps.
- shared-ui Vereins-UI-Komponenten — Svelte 5 mit strikter 12-Token-Disziplin. Die UI-Foundation aller mana-e.V.-Apps.
- shared-tailwind Tailwind-Preset für alle Vereins-Apps — gemeinsamer Farb-Token-Satz, Spacing-Skala, Schriften-Stack.
- shared-icons Phosphor-Icon-Wrapper für alle Vereins-SvelteKit-Apps — einheitliche Icon-API, bundlebar pro App nur die genutzten.
- shared-theme 12-Token-Theming-Engine — pro App ein Theme, ein Token-Satz, eine konsistente Optik.
- themes Theme-Variants für Vereins-Apps — konkrete 12-Token-Belegungen, die App-Stimmungen tragen.
- shared-branding Brand-Assets der Vereins-Apps — Logos, Favicons, App-Icons, Footer-Bausteine. Eine Quelle für visuelle Identität.
- shared-pwa PWA-Boilerplate für Vereins-Apps — Vite-Plugin, Theme-Bridge, Install-Banner, Update- und Offline-Komponenten.
- Backbone 8
Server-Foundation, Konfiguration, Logger, Drizzle-Pattern, tsconfig-Bases — die unsichtbaren Bauteile.
- shared-hono Hono-Server-Foundation — JWT-Auth-Middleware, Health-Endpoints, Admin-Routen, Fehlerbehandlung. Jeder Server-Service nutzt das.
- shared-drizzle-config Drizzle-ORM-Konfiguration-Factory für alle Vereins-Services — eine DB pro Service, schema-isoliert via pgSchema.
- shared-logger Logging-Foundation für Mobile- und Web-Apps der Plattform — strukturiert, kontextualisierbar, datenschutz-konform.
- shared-types Gemeinsame TypeScript-Typen für das Vereins-Monorepo — Wissens-Brücke zwischen Services und Apps.
- tsconfig Geteilte tsconfig-Bases — Web/SvelteKit und Hono+Bun-Server in zwei sauberen Voreinstellungen.
- shared-i18n Internationalisierungs-Helpers — Datumsformat, Pluralisierung, deutsche Schreibweisen. Heute deutsch-only, vorbereitet für mehr.
- shared-app-tpl Hono-Helpers für föderierte Vereins-Apps — Manifest-Serving, Share-Receive-Router, Tools-Router, DSGVO-Export.
- mana/shared-go Go-Helpers für die wenigen Vereins-Services in Go — Auth, Env, HTTP-Middleware. Pendant zu shared-hono.
- Plattform-Klienten 10
SDK-Pakete, die Apps mit den Plattform-Services verbinden. Eine Bibliothek pro Service-Familie.
- shared-share-protocol Föderations-Vertrag des Vereins — Manifest, Share-Envelope, Drag-Payload, Search-Result. Der eine Klasse-A-Vertrag, an dem alle Apps hängen.
- shared-schemas Event-Schemas pro Vereins-App — die Quelle der Wahrheit für mana-sync und Codegen-Quelle für event-kit.
- event-kit Event-Sourcing DSL und Codegen — definiert Schemas einmal, generiert TypeScript, Swift und Kotlin daraus.
- event-sync Web-Client für die Event-Sourced-Plattform — IndexedDB-Store + HTTP/WebSocket-Sync zu mana-sync.
- shared-auth Erste Generation der Auth-Klienten-Utilities. Lebt weiter, neue Apps starten auf shared-auth-sso.
- shared-auth-sso Svelte-5-Auth-Klient für das SSO-Cookie-Pattern — createSession, tryRefresh, buildLoginRedirect, AuthCallback.
- notify-client Client-SDK für den mana-notify Push-Service — eine Zeile pro App, statt OneSignal-Setup zu pflegen.
- shared-research Geteilte Typen und Provider-Interfaces für den mana-research Service — eine Schnittstelle vor 16+ Such-Providern.
- shared-rss RSS/Atom-Parser plus Mozilla-Readability-Artikel-Extraktion plus Feed-Discovery. Pure-TypeScript ohne externe Dienste.
- shared-map Cross-App-Karten-Komponente — MapLibre GL JS, PMTiles-ready, OpenStreetMap-Kacheln. Eine Karte für alle Vereins-Apps.
- Krypto 1
Sicherheits-Primitiven. Klein in der Anzahl, kritisch in der Funktion.
- Werkzeug 2
Generatoren und Marketing-Foundation für den Vereins-Alltag.
Eigene Bauteile statt fremde Abhängigkeiten — und sie liegen auf einer Registry, die der Verein selbst betreibt. Wer mit dem Vereins-Code arbeiten will, kommt direkt an die Pakete heran.