Messaging you back
The client side of the conversation. How they open a thread, type a reply, and send video form checks.
The walkthrough
Layout from their side
The client PWA has a Messages tab in the bottom nav. They only see one thread — yours. (Unlike the trainer dashboard which lists every client.) Opening that thread shows the full conversation history.
The flow
- Tap Messages in the bottom nav. If they have unread messages from you, the icon shows a badge with the count.
- The thread opens straight to the latest message. They scroll up to see history.
- Tap the composer at the bottom, type their reply, and tap Send.
- You see it instantly in your dashboard inbox — realtime via Supabase.
Push notifications
If the client has granted notification permission (PWA install + accepted the prompt), they get a push when you send a message. Tap the notification → opens the PWA directly to the thread.
Realtime caveat
Long-idle PWA tabs can occasionally miss a Supabase realtime event. Tell clients: if they think they missed a message, pull-to-refresh on the Messages tab. Known edge case we're tracking.
What clients can send
- Text — plain text for v1. Emoji works.
- Video clips — coming soon. For now, clients on iOS can use the Share Sheet to send a video from Photos to your trainer email; on Android they can use any video-share flow.
Read receipts
When you open a thread in your dashboard, the messages get marked read on the client's side too. They see "Read" on their last message — same way iMessage works. No "delivered" intermediate state.