A modern, privacy-first iOS 18+ app built with SwiftUI + SwiftData to help users log cravings and cannabis use, understand patterns, and stay compassionate during hard moments.
Pre-release. The objective quality gate is bash scripts/verify.sh (project generation, formatting, linting, invariants, simulator compile check, unit tests).
- Craving logging: Intensity (1–10), HAALT triggers, location presets, notes, timestamp
- Usage logging: ROA method + clinically-validated amount ranges, triggers, location, notes, timestamp
- Progress dashboard: Streaks, averages, top triggers, weekly summary
- Settings: Export (CSV/JSON) + delete-all (logs + recordings + custom messages)
- Privacy: Local-only storage (SwiftData CloudKit disabled), no analytics/tracking
- Motivational recordings (audio/video via AVFoundation): models/repository exist; capture/playback UI + use cases pending
- Motivational messages: model/repository exist; selection UI/use cases pending
- Onboarding: welcome/tour flow pending
./setup-tools.sh
xcodegen generate
bash scripts/verify.shClean Architecture + MVVM:
Cravey/Domain/stays framework-free (no SwiftUI/SwiftData imports)Cravey/Data/implements persistence via SwiftDataCravey/Presentation/is SwiftUI + @Observable ViewModels
See docs/GETTING_STARTED.md and docs/ARCHITECTURE.md for details.
- iOS Info.plist template:
Config/iOS.Info.plist.template - macOS Info.plist template:
Config/macOS.Info.plist.template