Skip to content
Abdulghafor Abbas.

Enterprise / Shown with sample data

KEZAD Mobile App.

One app, four kinds of user. I gave guests, company users, limited-access users and multi-company owners their own flows, all on one system.

A flow for every user, one system under all of them.

Client
KEZAD Group · AD Ports Group
Year
2026
Role
Senior UI/UX Expert, mobile design system
Tools
Figma, Figma variables, Figma prototyping, Phosphor Icons

Problem

The KEZAD app serves very different people:

  • A guest exploring what KEZAD offers.
  • A company user running services and paying invoices.
  • A user with limited access, waiting for approval.
  • An owner with more than one company.

The old Adobe XD file mixed them all. It had about 265 frames, with no components, 58 icon sets and duplicate colours. Nothing said which screen belonged to which user.

The legacy KEZAD XD import: rows of screens, options and duplicates side by side
The legacy XD import: options, duplicates and finals, side by side.

How I fixed it

Map the users before the screens

I split the app into separate journeys, then designed each one end to end.

  1. Splash
  2. Continue as guest
  3. Guest home
  4. Explore KEZAD
  5. Enquire
  6. Track enquiry
Guest: learn about KEZAD and send an enquiry, no account needed.
  1. Sign in
  2. MFA
  3. Home
  4. Start a service
  5. Track
  6. Pay
Signed in: run services for a company, from request to payment.

Why this, not that

Chose

A guest tab bar of its own

NotMember navigation with locked items

Guests get News, Menu and Guest support. No dead tabs, and no sign-in wall on every tap.

Chose

Limited access as a state of Home

NotAn error screen

A user waiting for approval sees why, and gets one clear action: submit an enquiry.

Chose

Switch company inside the profile

NotSign out and back in

Pick individual or company, then the company. One account, many trade licences.

One system under every flow

52 components with 363 variants in English and Arabic, 129 Phosphor icons in place of 58 legacy sets, and 116 variables.

KEZAD card and list components: detail rows, section headers, tiles, service rows and notification cards
Cards and lists: every screen is built from these, with no one-off shapes.

Solution

Guest home next to the signed-in home
Guest home and signed-in home: the same components doing different jobs.
Signed-in home tracks every application in place.
The home screen in English and in Arabic, right to left
Arabic is built from right-to-left component variants, not mirrored copies.
  • 135

    screens, rebuilt from about 265 legacy frames

  • 11

    clickable flows, 658 links, 0 broken

  • 363

    component variants, English and Arabic

Counts from the final Figma file, October 2026

Results

  • Every user type has a path. Guests, members, limited users and multi-company owners each land on a home that fits them.
  • The team can present any journey from one file, from the first splash screen to a failed payment and its retry.
  • Arabic is ready. 15 key screens are already built right to left from live components.

Want results like these?

Tell me what you're working on. A 30-minute call is usually enough to know if I can help.

  1. The Cashi wallet home screen on a phone held in violet light
    01

    Fintech / UI experiment 2025

    Cashi

    A digital wallet for young Sudanese users with limited data, varied literacy, and no patience for scrolling.

  2. The Launchsoft landing page on a laptop in a dark concrete room
    02

    SaaS 2026

    Launchsoft

    An Odoo ERP partner whose site buried its own offer. I rebuilt it around one clear path to a booked call.

  3. The Saudi Arabia entity dashboard on a desktop monitor by a window
    03

    Government / AI product 2026

    Entity Intelligence

    A bilingual country dashboard for public-sector analysts, with an AI colleague that cites its sources or admits when it can't.