← Back to case studies

Case study

Mental Health Care Platform

A bilingual mental health care app that connects patients with licensed therapists through diagnostic sessions, live video therapy, and structured treatment programs.

Industry
HealthTech / Medical Devices
Tech stack
FlutterDartFirebase Cloud MessagingFirebase CrashlyticsFirebase AnalyticsFirebase PerformanceAgora RTCAblyMoyasarTamaraMixpanelAdjust
Mental Health Care Platform screen 1
Mental Health Care Platform screen 2
Mental Health Care Platform screen 3
Mental Health Care Platform screen 4
Mental Health Care Platform screen 5
Mental Health Care Platform screen 6
Mental Health Care Platform screen 7
Mental Health Care Platform screen 8
Mental Health Care Platform screen 9
Mental Health Care Platform screen 10

Overview

The client is a mental health care provider serving Arabic and English speaking patients. Its clinical team runs diagnostic assessments, one to one therapy sessions, and multi week therapeutic programs. Coordinating that work across phone calls, spreadsheets, and separate booking and payment tools left staff managing the process by hand. They needed one patient facing app that carried a case from first assessment to ongoing treatment.

The Challenge

Patients had no single place to start care. Booking a diagnostic session, paying for a plan, joining a video call, and filling in clinical questionnaires each happened in a different tool. Therapists received assessment answers late and in inconsistent formats, so preparing for a session meant chasing information. Progress across a treatment program was hard to see, and patients dropped off between sessions with no structured content to follow. Both sides needed one app that held scheduling, sessions, clinical intake, and program content together.

The Solution

We built the patient app for iOS and Android in Flutter, fully bilingual in Arabic and English with right to left support. Patients register with phone, Google, or Apple sign in, complete an intake survey, book diagnostic and individual sessions from live therapist availability, and pay with card, Apple Pay, STC Pay, or Tamara instalments. Sessions run as in app video calls with real time chat before and after. Therapeutic programs deliver content sections, medical tool questionnaires that support text, number, boolean, select, table, and repeatable question types, and an improvement chart that plots assessment scores over time. Prescriptions, medical reports, session reports, subscription plans, coupons, and a support ticket system complete the patient record.

The Result

Patients move from first assessment to booked therapy without leaving the app, and answers reach therapists in a consistent format before the session starts. Clinical staff see questionnaire responses, session history, and progress charts in one place instead of reassembling them per patient. Managers can adjust content, plans, and program structure from the backend and reach both language audiences with a single release.

Our approach

  • Discover: Mapped the full patient journey with the clinical team, from intake survey and diagnostic session through therapy plans and program content, and defined the data each therapist needs before a session.
  • Design: Built a bilingual design system with Arabic first typography and right to left layouts, then modelled the app as feature modules with separate data, domain, and presentation layers so each clinical area could evolve on its own.
  • Build: Delivered authentication, therapist booking with time slot holding, payments and subscriptions, live video sessions, real time chat, medical tool questionnaires, and progress charts, with generated API clients and unit and widget test coverage on the validation and state logic.
  • Refine: Added crash, performance, and product analytics, separate development and production flavors, and over the air patch delivery so fixes reach users without waiting on store review.