Vorbereitung für die Spiegelung nach git.mana.how/offen (Prüfliste QUELLOEFFNUNG.md §5): Sweep sauber, keine Privat-Marker, Apache-2.0 mit NOTICE seit Welle 1, Schriften mit OFL-Texten. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> |
||
|---|---|---|
| devlog | ||
| Sources/ManaEventSync | ||
| Tests/ManaEventSyncTests | ||
| .gitignore | ||
| .swiftformat | ||
| .swiftlint.yml | ||
| CHANGELOG.md | ||
| CLAUDE.md | ||
| LICENSE | ||
| NOTICE | ||
| Package.swift | ||
| README.md | ||
mana-swift-event-sync
ManaEventSync — der native Swift-Counterpart zu @mana/event-sync.
Eine geteilte Event-Sourcing-Sync-Bibliothek für alle nativen
mana-Apps: lokaler Event-Log + Projektion, Outbox, HTTP/WebSocket-
Sync gegen mana-sync (sync2.mana.how), optionale Payload-Crypto und
Local-First mit Anonymous-Mode + Claim bei Login.
Vereinheitlicht die zuvor zweimal von Hand gebaute Plumbing aus
pageta-native und nutriphi-native.
Was die App liefert, was die Lib liefert
- Lib (
ManaEventSync): Wire-Format (EventEnvelope),EventStorage(SwiftData),SyncHTTPClient+ optionalerSyncWSClient, optionaleCryptoProvider/VaultClient, dieEventSyncEnginemit Anonymous- Identität +signIn-Claim. - App: ihre Domäne — Payload-Typen, State-Projektionen, Reducer und
ein dünner Coordinator, der
engine.makeEnvelope/emit/events(forAggregate:)nutzt.
Stand
Siehe CHANGELOG.md. Plan + Phasen:
../mana/docs/playbooks/MANA_SWIFT_EVENT_SYNC.md.
Lokal
swift build
swift test
Bauen
Swift Package. Die Abhängigkeiten auf andere mana-Bibliotheken sind Pfad-Abhängigkeiten — alle nebeneinander in denselben Ordner klonen:
for r in mana-swift-core mana-swift-llm mana-swift-event-sync mana-swift-ui; do
git clone https://git.mana.how/offen/$r.git
done
swift build # im jeweiligen Ordner
Für Mitlesende
Dieses Repo gehört zum Ökosystem von mana und liegt offen, damit andere es lesen, einordnen und als Grundlage nutzen können — das spart Arbeit, egal ob ein Mensch oder ein Modell davorsitzt.
Was du erwarten darfst: den Code so, wie er tatsächlich in Gebrauch ist,
unter Apache-2.0 (siehe LICENSE und NOTICE). Keine Attrappe, kein
zurechtgeschnittener Auszug — samt seiner Geschichte.
Was du nicht erwarten darfst: Support, Antwortzeiten, Zusagen zur Abwärtskompatibilität oder die Übernahme von Änderungswünschen. Dieses Repo folgt dem, was die eigenen Anwendungen brauchen. Fehlermeldungen sind willkommen, eine Antwort ist nicht zugesagt.
Fork ist ausdrücklich erlaubt und oft der schnellere Weg als zu warten.