Shipping two role-specific apps without duplicating all mobile infrastructure.
Built patient and doctor flavors on top of shared core, auth, payment, chat, notifications, and media services.
Teletherapy Marketplace
Estaraht connects patients with therapists for remote mental health sessions, appointment booking, secure chat, video/audio calls, payments, subscriptions, session files, notifications, and reviews. One Flutter codebase ships patient and doctor app flavors.
Stack depth
12+
tools and integrations
Product scope
Patient and doctor flavors from one codebase. Therapist discovery by specialty, location, demand, and search.

Stack
Features
Architecture
Used compile-time app flavoring to control startup flow, routes, Firebase options, package IDs, and role-specific screens.
Organized the codebase into shared infrastructure, auth, patient, doctor, video call, and shared service layers.
Combined Supabase data/storage workflows with Firebase auth, messaging, crash reporting, and app-service integrations.
Centralized payment, pricing, reviews, notifications, session files, and doctor-rating data through shared services and migrations.
Problem solving
Built patient and doctor flavors on top of shared core, auth, payment, chat, notifications, and media services.
Kept booking, payment, session balance, and call timing rules explicit in the app flow so users land in the correct state.
Screenshots / video
Media shown here comes from the project source folders in this workspace.



