Native SwiftUI-Komponenten für alle nativen mana-e.V.-Apps. Heute ManaAuthUI — vollständige Auth-Reise.
Find a file
Till JS dc8e5a4e9b v0.4.0 — ManaTwoFactorEnrollView + ManaTwoFactorDisableView
3-Phasen-Wizard für 2FA-Enrollment + Single-Step-Sheet für Disable.
Setzt mana-swift-core ≥ 1.4.0 voraus.

ManaTwoFactorEnrollView:
1. Passwort-Re-Auth → server liefert otpauth-URI + Backup-Codes
2. QR-Code-Display (CoreImage.CIFilter.qrCodeGenerator) + 6-stellige
   Test-Code-Eingabe
3. Backup-Codes-Liste mit Copy-to-Clipboard

ManaTwoFactorDisableView:
- Re-Auth via Passwort, destructive-Button, .done-Konfirmation

5 neue Tests, 44/44 grün.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-14 00:39:03 +02:00
Sources/ManaAuthUI v0.4.0 — ManaTwoFactorEnrollView + ManaTwoFactorDisableView 2026-05-14 00:39:03 +02:00
Tests/ManaAuthUITests v0.4.0 — ManaTwoFactorEnrollView + ManaTwoFactorDisableView 2026-05-14 00:39:03 +02:00
.gitignore v0.1.0 — initialer Sprint, vollständige Auth-Reise als SwiftUI 2026-05-13 19:22:42 +02:00
CHANGELOG.md v0.4.0 — ManaTwoFactorEnrollView + ManaTwoFactorDisableView 2026-05-14 00:39:03 +02:00
CLAUDE.md v0.1.0 — initialer Sprint, vollständige Auth-Reise als SwiftUI 2026-05-13 19:22:42 +02:00
Package.swift v0.1.0 — initialer Sprint, vollständige Auth-Reise als SwiftUI 2026-05-13 19:22:42 +02:00
README.md v0.1.0 — initialer Sprint, vollständige Auth-Reise als SwiftUI 2026-05-13 19:22:42 +02:00

mana-swift-ui

Native SwiftUI-Komponenten für alle nativen Apps des Vereins mana e.V. Heute genau ein Library-Product:

  • ManaAuthUI — vollständige Auth-Reise (Login, Sign-Up, Email-Verifikation, Passwort-Reset, Account-Management) als SwiftUI-Views. Konsumiert ManaCore für API-Calls und ManaTokens für Vereins-Designwerte.

Wird konsumiert von cards-native, manaspur-native, memoro-native und allen kommenden Verein-Apps.

Verhältnis zu mana-swift-core

mana-swift-core liefert die Wire-/Auth-/Token-Schicht: AuthClient, AuthenticatedTransport, KeychainStore, Farben, Spacings. Dieses Paket setzt darauf auf und liefert UI.

Getrennte Repos, damit mana-swift-core stabil bleibt während sich die UI-Komponenten organisch entwickeln.

Lokal entwickeln

swift build
swift test

../mana-swift-core/ muss als Schwester-Verzeichnis existieren.

Konventionen

Siehe CLAUDE.md.