INDRA GERSONE
ExaDo hero image

ExaDo — SaaS web app for health practitioners and their patients

Role: UX/UI Designer

Responsibilities: Product redesign & design system

Project Duration: 2023 – 2026

Tools: Figma, Adobe CC

Industry: Healthcare

ExaDo is a Vienna-based healthcare practice management platform that bridges the gap between patients and doctors through a single digital ecosystem. It gives non-equity doctors full control over how patient data is used, while patients decide who can access their records.

As the UX/UI Lead on this project, I worked with the ExaDo team to shape both the digital product and its identity. My most important task was creating a scalable design system that supports future business expansion.

The product identity reflects a clean, minimalist design language built around functionality, ensuring that both patients and doctors can navigate complex healthcare workflows with clarity and confidence.

Project include:

Create scalable design system

Visual identity

Redesign UI interfaces

Landing Page Design

Design System

Overview

When I joined ExaDo, there was no established design system, only a working prototype, no Figma setup, and no shared reference for the development team or designers.

I built the design system library in parallel with the web app redesign, that mean defining tokens and components as I designed screens. The system covers grid and spacing rules, a full typography scale, a colour system with accessibility checks, an icon set, and a component library with defined states and variables.

What follows is how each layer of that system was built: the type scale, the colour logic, and the component architecture.

The starting point

The first step was analysing the existing prototype and identifying visual issues, research competitors then building a mood board for the new direction. The prototype itself worked as wireframe. The user flows were already established and I needed to redesign without breaking it.

Typography hierarchy and colour were the first things to resolve

Original ExaDo prototype

Typography

The ExaDo project has two fonts. The main body font is Roboto, chosen for its legibility and functionality in UI interfaces. Ubuntu is only used for headings, creating a more distinctive text hierarchy.

Ubuntu AaCcBbDd
Medical monitor
AaCcBbDd Roboto
H1 H1 Ubuntu Regular 62 / 72 / 400 / 0.1
Used forLanding Page only, letter spacing - 0.1px
ColourGrey 700 · #181818
H2 H2 Ubuntu Regular 40 / 48 / 400
Used forLanding Page only
ColourGrey 700 · #181818
H3 H3 Roboto Semi Bold 30 / 42 / 600 / 1
Used forLanding Page only
ColourGrey 700 · #181818
H4 H4 Ubuntu Regular 22 / 30 / 400
Used forLanding Page only
Titles
ColourGrey 700 · #181818
H5 H5 Ubuntu Regular 16 / 24 / 400
Used forLanding Page only
Subheading small
ColourGrey 700 · #181818
L Body Extra Large 20 / 28 / 400
Used forLanding page body text only
ColourGrey 600 · #4E4E4E
M Body Large 18 / 26 / 400
Used forLanding page — paragraphs, descriptions
ColourGrey 600 · #4E4E4E
S Body Medium 16 / 24 / 400
Used forLanding page — paragraphs, descriptions
ColourGrey 600 · #4E4E4E
SM-B Body Semi Bold 14 / 18 / 600
Used forLabels, emphasis within body text
ColourGrey 600 · #4E4E4E
SM Body Default 14 / 18 / 400
Used forContent, list items
ColourGrey 600 · #4E4E4E
XS Body Small 12 / 16 / 400
Used forCaptions, helper text
ColourGrey 600 · #4E4E4E
H1 H1 Ubuntu Regular 30 / 36 / 400
Used forMain screen title — used once per screen
ColourGrey 700 · #181818
H2 H2 Ubuntu Regular 26 / 32 / 400
Used forDividing screen into sections
ColourGrey 700 · #181818
H3 H3 Ubuntu Regular 22 / 28 / 400
Used forSubsection text
ColourGrey 600 · #4E4E4E
H4 H4 Ubuntu Regular 16 / 24 / 400
Used forTable cell titles, nav bar items, card titles
ColourGrey 700 · #181818
H5 H5 Ubuntu Regular 14 / 18 / 400
Used forTable inner cell titles only
ColourGrey 700 · #181818
S Body Medium 16 / 24 / 400
Used forWeb app — paragraphs, descriptions
ColourGrey 600 · #4E4E4E
SM-B Body Semi Bold 14 / 18 / 600
Used forWeb app labels, emphasis within body text
ColourGrey 600 · #4E4E4E
SM Body Default 14 / 18 / 400
Used forWeb app content, table cells, list items
ColourGrey 600 · #4E4E4E
XS Body Small 12 / 16 / 400
Used forWeb app captions, helper text
ColourGrey 600 · #4E4E4E

Above you see the established typography style system for the web app and landing page, and where it's been used. The styles are labelled using the same language as they would be in code. I think it makes things easier. The image below shows how the typography styles look on the web app dashboard.

Type scale applied to a diagnostic report

Colour

The original brand colour failed WCAG AA contrast requirements. It was too bright and intense to be used as a background colour or as navigation in UI elements. I replaced it with a darker greenish teal that passes contrast checks, and paired it with a soft white (#FCFCFC) for both the landing page and web app backgrounds. The softer white reduces the overall intensity on screen and eases the strain on the eyes, a small detail, a big impact.

Brand palette

The palette is split between brand and functional colours. The brand palette contains three shades. A dark teal anchors the identity, chosen because its green undertone signals care and wellbeing, while its light teal component communicates precision and reliability.

The secondary palette plays a more functional role. Each hue maps to a specific interaction type: blue for upcoming appointments, gold for pending, lavender for chats, rose for emergencies, mint for verifications. The secondary palette appears only on card icons, never as a background or decorative fill.

Primary
Teal 800
Teal 200
Teal 800 #19615E

Brand colour, CTA buttons, active navigation, verification icons.

Teal 200 #D9EDEC

Interactive feedback — selected cards, tag fills, hover states.

Secondary
Light Blue
Light Gold
Light Lavender
Light Rose
Dark Blue
Dark Gold
Dark Lavender
Dark Mint
Light Blue#BEE1F4
Light Gold#F6F5D3
Light Lavender#FFD78F
Light Rose#FFCFCF
Dark Blue#81C6EA
Dark Gold#DBD640
Dark Lavender#C399D8
Dark Mint#B6E2D0

The secondary palette exists for one reason: orientation. Each colour maps to an interaction type — blue for upcoming, gold for pending, lavender for chats, rose for emergencies, mint for verifications — and appears only on card icons and tab highlights. Light shades mark personal items, darker shades mark clinic items. It's a small, deliberate detail, but in a dense healthcare app its makes a difference.

Upcoming Appointments Clinic Upcoming Appointments Upcoming Chats Ongoing Chats Requested Appointments Clinic Requested Appointments
Functional palette
Typography
Grey 700
Grey 600
Grey 500
Teal 800
Grey 700#181818

Headings H1, H2, H4, H5.

Grey 600#4E4E4E

Heading H3, body text.

Grey 500#ADADAD

Inactive text in buttons or fields.

Teal 800#19615E

Accent text to draw attention.

Backgrounds
Teal 100
Grey 100
Grey 300
Teal 100#F1F6F4

Web app background.

Grey 100#FCFCFC

Landing page, cards.

Grey 300#EFEFEF

Cell title backgrounds.

Borders / dividers
Grey 400
Grey 200
Grey 400#D9D9D9

Input field borders.

Grey 200#F1F1F1

Dividers.

Accessibility
WCAG contrast
Teal 100
Grey 100
Teal 800
Background Text colour Contrast WCAG AA
Teal 100 Negative 2.4 : 1 Fail
Teal 100 Teal 800 6.58 : 1 Fail
Teal 100 Grey 700 7.6 : 1 Pass
Teal 100 Grey 700 16.26 : 1 Pass
Grey 100 Negative 2.4 : 1 Pass
Grey 100 Teal 800 6.58 : 1 Pass
Grey 100 Grey 700 7.6 : 1 Pass
Grey 100 Grey 700 16.26 : 1 Pass
Teal 800 Negative 1.03 : 1 Fail
Teal 800 Grey 700 1.15 : 1 Fail
Teal 800 Grey 50 7.18 : 1 Pass

Atoms. Molecules. Organisms. Templates. Pages.

The priority was creating a system that stayed cohesive throughout the entire product. Everything in ExaDo was built following atomic design. I started from buttons and composed upward. This allowed the developer team to implement finished components while I was still working on the layouts and visual design. That way, they didn't have to wait for me.

Component library overview

Each component was designed with its own set of states. From inputs with validation and error messages to upload indicators that show every step from default through to failure. All components follow the same visual logic to give clear feedback at every interaction point.

Atomic design elements

The table card is one of the most complicated components in the UI. It appears on almost every page of the product for different purposes, therefore it was designed so that every cell has variables, which means I don't need to redesign the table on new pages, I just need to update and change the variables.

Table design component

The spacing system uses a 4px base unit applied consistently across every screen. This removes guesswork from layout decisions — both in design and in development — and ensures visual rhythm holds as new features are added.

4px spacing system applied to account settings screen
Explore the full product.

Web App

Overview

What makes ExaDo distinct is that the product was developed in direct collaboration with the doctors who test it and will use the end product. Every feature and workflow is grounded in what private clinic practitioners actually need in their management tool to run a clinic.

Starting Point

The original prototype prioritised functional coverage over visual refinement. Inconsistent spacing, typography, and component styles made the interface feel like a working sketch rather than a product healthcare professionals would trust. During my analysis, I also looked for areas that needed improvements not only visually but in how information was organised, without breaking apart the created flow.

ExaDo web app prototype

The redesigned dashboard introduces a clear visual hierarchy, a consistent component library, and accessible color and typography choices — keeping the same information architecture but making it scannable, trustworthy, and compliant with WCAG 2.1 AA.

Even though the user flows had already been created, I still found some areas worth refining. On the Patient page, for example, users had to switch between several segments without keeping an overview of the patient's key information. I made a small change: patient information is now pinned to the top and stays visible, while health information, health monitoring, and appointment history sit below as segmented tabs. This approach has become a pattern across the product where the most important information is now pinned to the top in the same way.

My Patients old prototype
My Patients screen
Invoice old prototype

The Invoice flow already existed, but the visual design made it harder to use than it needed to be. I restructured the layout into two columns and introduced clear section headers, so the user can immediately understand which block of fields belongs to whom.

I also added contextual metadata at the top of the page (invoice number, booking ID, and date) so the doctor always knows which invoice they are working on. Finally, I gave the action buttons a clearer hierarchy: the primary "Generate" action is filled, while secondary actions like "Add discount" and "View invoice" are outlined, so the main path forward is visually obvious.

Invoice Settings screen
Invoice Generate screen
Explore the full product.

Landing Page

Overview

The landing page was the first part of the project to be designed, before work on the web app began. This meant I had to start by understanding ExaDo's full product positioning and translating it into a clear, simple page that communicated the product's value to first-time visitors.

Functionality

The landing page is designed to keep users engaged without relying on too many interactive elements. It is well documented that overly animated websites with excessive interactions can overwhelm users and make it harder to find the information they need, therefore often causing them to leave the page. With that in mind, I kept the interactions on the landing page purposeful and restrained. Contact forms, login, and account creation all open as pop-ups rather than separate pages, so visitors don't lose their context or have to navigate away from the content they were reading. The top navigation bar stays fixed as the user scrolls, making it easy to jump between sections at any point on the page.

Illustrations

The landing page illustrations were created in Adobe Illustrator as bespoke vector assets. Rather than relying on stock imagery, custom illustration was a deliberate choice, it allows the visual language to align precisely with the product's identity.

Landing page illustration Landing page doctor illustration
Explore the full product.