@mana/shared-drizzle-config
Drizzle-ORM-Konfiguration-Factory für alle Vereins-Services — eine DB pro Service, schema-isoliert via pgSchema.
@mana/shared-drizzle-config liefert die Drizzle-ORM-Konfiguration als
Factory. Ein Service ruft createDrizzleConfig({ schema: 'auth', db: 'mana_auth' }) und bekommt einen vorkonfigurierten Postgres-Client
mit Schema-Isolation via pgSchema.
Plattform-Konvention: eine Postgres-DB pro Service, Schema-Name = Service- Name. Dadurch sind die Daten der Services strikt voneinander getrennt, auch wenn sie auf dem gleichen Postgres-Cluster laufen. Wer Service-A löscht, löscht eine ganze DB, nicht ausgewählte Tabellen.
Drizzle als ORM-Wahl ist begründet: TypeScript-First, SQL-nah, ohne Magic. Wenn ein Service einmal direkt SQL braucht (für Performance oder PostgreSQL-Spezifika), geht das ohne Drizzle-Workarounds.
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-drizzle-config 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.
Wer es benutzt
Worauf es sich bindet
- Klasse
- Klasse B — Foundation — intern-versioniert, große Adoption erwartet.
- Sprache
- TypeScript
- Version
- v1.0.0
- Registry
- npm.mana.how — 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: v1.0.0.
- Migrations-Bootstrap-Pattern weiter standardisieren.
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-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-app-tplHono-Helpers für föderierte Vereins-Apps — Manifest-Serving, Share-Receive-Router, Tools-Router, DSGVO-Export.
@mana/shared-drizzle-config ist eines von vielen Paketen, die der Verein selbst pflegt — eigene Bauteile auf eigener Registry, frei nachnutzbar.