Native SwiftUI-Universal-App für Cardecky (mana e.V.). Web-Parität zu cardecky.mana.how. SOT: mana/docs/playbooks/CARDS_NATIVE_GREENFIELD.md
Find a file
Till JS 0b2ae167b7 v0.8.0 — Phase β-7 App-Store-Vorbereitung
Feature-komplett für TestFlight. App-Icon-Platzhalter, Siri-Shortcut,
Share-Extension, Release-Checklist mit allen externen Apple-Schritten.

- scripts/make-appicon.swift: CoreGraphics-basierter Generator für
  1024×1024 forest-green PNG mit "C"-Letter und Karten-Stack-Schatten
- Asset-Catalog auf Single-Size-AppIcon-Pattern umgestellt
- StudyCardsIntent + CardsAppShortcuts (App Intents): Siri-
  Shortcut "Karten lernen mit Cards" / "Mit Cards lernen"
- CardsShareExtension Target: ShareViewController (UIKit-Bootstrap +
  SwiftUI-Hosting), ShareEditorView mit Text-Edit
- PendingShare + PendingShareStore shared in App-Group
  group.ev.mana.cards
- DeckListView zeigt PendingShare-Banner; Tap navigiert zu
  PendingShareConsumeView mit Deck-Picker + Front/Back-Felder, Submit
  → POST /cards, danach store.remove
- Info.plist: NSPhotoLibraryUsageDescription für Image-Occlusion-
  Picker, NSUserActivityTypes für Universal-Links
- docs/RELEASE_CHECKLIST.md mit externen Schritten: Apple-Developer-
  Portal, App-IDs, App-Group, AASA, Xcode-Archive, TestFlight-Plan,
  App-Store-Connect-Felder, Compliance-Verifikation
- UI-Test robuster (akzeptiert Login oder Decks/Entdecken als
  Launch-Erfolg, unabhängig vom Simulator-Keychain-State)
- 35 Tests + 1 UI-Test grün, alle drei Targets bauen

App-Store-Submission selbst ist externe Aktion und passiert nicht
durch dieses Repo — Schritte in docs/RELEASE_CHECKLIST.md.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-13 01:13:27 +02:00
docs v0.8.0 — Phase β-7 App-Store-Vorbereitung 2026-05-13 01:13:27 +02:00
scripts v0.8.0 — Phase β-7 App-Store-Vorbereitung 2026-05-13 01:13:27 +02:00
ShareExtension v0.8.0 — Phase β-7 App-Store-Vorbereitung 2026-05-13 01:13:27 +02:00
Sources v0.8.0 — Phase β-7 App-Store-Vorbereitung 2026-05-13 01:13:27 +02:00
Tests v0.8.0 — Phase β-7 App-Store-Vorbereitung 2026-05-13 01:13:27 +02:00
Widgets/CardsWidget chore: gitignore widget-generated Info.plist + entitlements 2026-05-13 01:00:22 +02:00
.gitignore v0.8.0 — Phase β-7 App-Store-Vorbereitung 2026-05-13 01:13:27 +02:00
.swiftformat v0.1.0 — Phase β-0 Setup 2026-05-12 19:29:45 +02:00
.swiftlint.yml v0.1.0 — Phase β-0 Setup 2026-05-12 19:29:45 +02:00
CLAUDE.md v0.1.0 — Phase β-0 Setup 2026-05-12 19:29:45 +02:00
PLAN.md v0.8.0 — Phase β-7 App-Store-Vorbereitung 2026-05-13 01:13:27 +02:00
project.yml v0.8.0 — Phase β-7 App-Store-Vorbereitung 2026-05-13 01:13:27 +02:00
README.md v0.1.0 — Phase β-0 Setup 2026-05-12 19:29:45 +02:00

cards-native

Native SwiftUI-Universal-App (iOS / iPadOS / macOS) für Cardecky — die Spaced-Repetition-Karten-App des Vereins mana e.V.

Web-App-Parität. Die existierende Web-App auf cardecky.mana.how ist Funktions- und Verhaltens-Referenz. Native bringt kein neues Produkt, sondern die App in einer Form, die iOS-Hardware besser nutzt.

Status

Phase β-0 — Setup. Leerer Build, Login funktioniert, Cardecky-API- Reachability-Check. Vollständiger Phasen-Plan in ../mana/docs/playbooks/CARDS_NATIVE_GREENFIELD.md.

                       HTTPS/JWT      ┌──────────────────┐
   cards-api          ◄─────────────  │ cards-native     │  SwiftUI
   cardecky-api.mana.how              │ ev.mana.cards    │  WidgetKit (β-6)
                                      └──────────────────┘
                                               │
              ┌─────────────────────────────────────────┐
              ▼                                         ▼
   ManaCore (Auth, Transport)         ManaTokens (Designwerte)
   git.mana.how/till/mana-swift-core v1.0.0+

Lokal entwickeln

xcodegen generate
open CardsNative.xcodeproj      # iPhone-17-Simulator

Konventionen, Invarianten, Phasen-Disziplin: CLAUDE.md.