mana/shared-go ist die Go-Foundation für die beiden Plattform-
Services, die nicht in TypeScript geschrieben sind: mana-notify
(Push-Versand) und mana-sync (Event-Store).
Drei Sub-Pakete: authutil für JWT-Verifikation gegen
mana-auth-JWKS, envutil für Umgebungs-Variablen-Validierung,
httputil für Server-Setup und Middleware. Damit haben die Go-Services
das gleiche Auth-Verhalten wie ihre TypeScript-Schwester-Services.
Anders als die TS-Pakete liegt das Go-Modul nicht in Verdaccio, sondern
wird direkt aus dem Repo importiert (git.mana.how/mana/mana/packages/ shared-go). Go ist mit Modul-Pfaden im Quell-Repo zufriedener als mit
zentralen Registries.
Worauf es sich bindet
- Klasse
- Klasse B — Foundation — intern-versioniert, große Adoption erwartet.
- Sprache
- Go
- Version
- v0.1.0
- Registry
- forgejo — eigene Vereins-Registry, kein npmjs.com
- Lizenz
- Quelloffen — Details im Repo.
Was es für den Verein verkörpert
- EigenbetriebEigene Infrastruktur, quelloffener Stack.
- LanglebigkeitBewährte Stacks, gute Doku.
Was läuft, was nicht
Version: v0.1.0.
- Eigene Forgejo-Go-Modul-Veröffentlichung formalisieren.
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/shared-typesGemeinsame TypeScript-Typen für das Vereins-Monorepo — Wissens-Brücke zwischen Services und Apps.
- @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-go ist eines von vielen Paketen, die der Verein selbst pflegt — eigene Bauteile auf eigener Registry, frei nachnutzbar.