Pure-Native SwiftUI-App für Moodlit. Pendant zur SvelteKit-Web-App auf moodlit.mana.how; konsumiert ManaCore + ManaTokens + ManaAuthUI aus den Schwester-Repos. Stack: - SwiftUI Universal (iOS 18 / macOS 15), Swift 6 strict concurrency - mana-swift-core + mana-swift-ui (lokale SPM-Pakete via XcodeGen) - Bundle ev.mana.moodlit, Team QP3GLU8PH3, App-Group group.ev.mana.moodlit Features: - 24 Mood-Presets als Swift-Konstanten (Port von default-moods.ts) - Custom-Moods + Sequenzen via MoodlitAPI (Actor mit JWT-Bearer-Calls über AuthenticatedTransport, automatischer 401-Retry) - MoodPlayerView mit Idle-Timer-Off, Status-Bar-Hidden, Timer-Auto- Close, Favorite-Toggle, Play/Pause, Auto-Hide-Controls - SequencePlayerView mit Crossfade-Rotation durch alle Sequence-Moods (Net new ggü. Web — dort ist Sequence-Playback nicht verkabelt) - AnimatedMoodView rendert alle 21 AnimationTypes als 30-fps Timeline- View mit sin/cos-modulierten Filter-Effekten - Cards-Pattern Auth-Gate: Presets ohne Login sichtbar, Custom- Creation triggert ManaAuthGate.require → Login-Sheet - Theme: ManaTheme.twilight Forward (Violett #7c3aed) Build verified: - xcodebuild iOS Simulator (iPhone 17) → BUILD SUCCEEDED - xcodebuild macOS → BUILD SUCCEEDED Offen (μ-7.1+): Apple-Dev-Portal-Setup (Bundle, Capabilities), TestFlight, Widget, Settings-UI (Brightness/Speed), Hex-Color-Picker mit Text-Input, Visual-Polish der per-Animation Effekte. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
39 lines
1.1 KiB
Markdown
39 lines
1.1 KiB
Markdown
# Moodlit Native
|
|
|
|
Native iOS + macOS App für [Moodlit](https://moodlit.mana.how) — Ambient
|
|
Lighting & Mood-Sequenzen des Vereins **mana e.V.**
|
|
|
|
> Pendant zur SvelteKit-Web-App in [`../moodlit/`](../moodlit). Pure-
|
|
> Native, kein WebView. Konsumiert `ManaCore` + `ManaAuthUI` aus
|
|
> [`../mana-swift-core/`](../mana-swift-core) und
|
|
> [`../mana-swift-ui/`](../mana-swift-ui).
|
|
|
|
## Was steht
|
|
|
|
- 24 Mood-Presets + Custom-Moods + Sequenzen
|
|
- Vollbild-Player mit Idle-Timer-Disable (Bildschirm geht im Player
|
|
nicht in den Lock)
|
|
- **Sequence-Playback** mit Crossfade-Übergängen — net new ggü. Web
|
|
- 21 Animation-Stile in SwiftUI TimelineView
|
|
- mana-auth Login via ManaAuthUI
|
|
|
|
## Build
|
|
|
|
```bash
|
|
xcodegen
|
|
xcodebuild -project MoodlitNative.xcodeproj -scheme MoodlitNative \
|
|
-destination 'platform=iOS Simulator,name=iPhone 17' \
|
|
-derivedDataPath /tmp/moodlit-native-dd \
|
|
CODE_SIGNING_ALLOWED=NO build
|
|
```
|
|
|
|
## Status
|
|
|
|
Phase μ-7.0 — Skelett build-grün, noch nicht TestFlight. Siehe
|
|
[STATUS.md](STATUS.md).
|
|
|
|
## Mehr
|
|
|
|
- [CLAUDE.md](CLAUDE.md) — Architektur & Konventionen
|
|
- [STATUS.md](STATUS.md) — aktueller Phasen-Stand
|
|
- [../moodlit/](../moodlit) — Web-Counterpart
|