SwiftUI handles the iOS experience while an Express API owns goal state, coaching, and progress calculations. Streaming responses connect the coach to the app without waiting for a complete reply.
Explicit daily progress
Goals use simulated ticker prices to represent progress. Daily-close logic records activity, price movement, and a receipt in PostgreSQL, with user time zones defining the program day.
Work beyond the chat request
Redis and BullMQ handle asynchronous planning and summaries. HealthKit supplies activity and biometric inputs, while the backend verifies signed StoreKit transactions before updating subscription state.
My contribution
Built a native SwiftUI application and TypeScript backend for goal setup, daily activity, and progress tracking.
Implemented streaming AI coaching with structured tools, persistent context, and goal-specific plans.
Integrated Apple HealthKit data, background jobs, and StoreKit subscription verification.
Results
Implemented the native app and backend flow from onboarding through coaching and daily progress review.
Health-data sync, asynchronous planning, and subscription handling integrated into the application codebase.