@mana/event-sync
Web-Client für die Event-Sourced-Plattform — IndexedDB-Store + HTTP/WebSocket-Sync zu mana-sync.
@mana/event-sync ist der Web-Client für das Event-Sourced-Backbone.
Eine Vereins-Web-App importiert ihn, registriert sich für ihre App-ID
und bekommt einen lokalen Event-Store in IndexedDB, der mit mana-sync
über HTTP+WebSocket synchron läuft.
Offline-Fähigkeit ist die Default-Konsequenz: was lokal in IndexedDB
liegt, ist sofort lesbar; was geschrieben wird, läuft beim nächsten
Reconnect zum Server. Reducer aus @mana/event-kit projizieren den
Event-Strom auf den aktuellen App-State.
Die wichtigste Eigenschaft, die sich von Firebase oder Supabase unterscheidet: alle Events können vor dem Schreiben AES-GCM-256 verschlüsselt werden. Der Server kennt dann die Reihenfolge und die Existenz, aber nicht den Inhalt. Zero-Knowledge ohne Cloud-Vendor- Magic.
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/event-sync 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 B — Foundation — intern-versioniert, große Adoption erwartet.
- Sprache
- TypeScript
- Version
- v0.4.0
- Registry
- npm.mana.how — eigene Vereins-Registry, kein npmjs.com
- Lizenz
- Quelloffen — Details im Repo.
Was es für den Verein verkörpert
- DatensouveränitätVerwahrer statt Eigentümer.
- EigenbetriebEigene Infrastruktur, quelloffener Stack.
- AchtsamkeitKeine Engagement-Tricks.
Was läuft, was nicht
Version: v0.4.0.
- Cross-App-Timeline-Aggregator (Phase 2) ist Roadmap.
- Snapshot-Compaction für sehr lange Event-Logs.
Weitere Pakete dieser Kategorie
SDK-Pakete, die Apps mit den Services verbinden.
- @mana/shared-share-protocolFöderations-Vertrag des Vereins — Manifest, Share-Envelope, Drag-Payload, Search-Result. Der eine Klasse-A-Vertrag, an dem alle Apps hängen.
- @mana/shared-schemasEvent-Schemas pro Vereins-App — die Quelle der Wahrheit für mana-sync und Codegen-Quelle für event-kit.
- @mana/event-kitEvent-Sourcing DSL und Codegen — definiert Schemas einmal, generiert TypeScript, Swift und Kotlin daraus.
- @mana/shared-authErste Generation der Auth-Klienten-Utilities. Lebt weiter, neue Apps starten auf shared-auth-sso.
- @mana/shared-auth-ssoSvelte-5-Auth-Klient für das SSO-Cookie-Pattern — createSession, tryRefresh, buildLoginRedirect, AuthCallback.
- @mana/notify-clientClient-SDK für den mana-notify Push-Service — eine Zeile pro App, statt OneSignal-Setup zu pflegen.
@mana/event-sync ist eines von vielen Paketen, die der Verein selbst pflegt — eigene Bauteile auf eigener Registry, frei nachnutzbar.