Ferd.Ai

Ferd.Ai

Client

Client

Phoenux.design

Phoenux.design

Scope

Scope

Web App

Web App

Service

Service

UI UX Design

UI UX Design

Website

Website

Explore My Work

Overview

Ferd AI converts brand preferences into production-ready components, enabling designers to assemble screens and developers to ship faster.

My role

I led FERD.ai’s end-to-end design from research and competitor analysis to user journeys and UI audits working with stakeholders and developers to keep the product clear, usable, and scalable.

Team

1 product designer (me) , 2 engineers

1 product designer (me) , 2 engineers

Recognized as Top 50 Semi-Finalist at GITEX 2024 (among 1,800+ global startups).

Recognized as Top 50 Semi-Finalist at GITEX 2024 (among 1,800+ global startups).

file:.icon-item:

{ display: flex;

align-items: center;

background-color: #fff;


Embed

file:.icon-item:

{ display: flex;

align-items: center;

background-color: #fff;


Embed

The Problem

👉 Designers and developers often struggle to keep design systems consistent. Updates get lost, components drift apart, and the handoff process takes too long. Existing tools are either too technical for designers or too limited for developers. Teams waste time fixing the same issues instead of building new things.

👉 Designers and developers often struggle to keep design systems consistent. Updates get lost, components drift apart, and the handoff process takes too long. Existing tools are either too technical for designers or too limited for developers. Teams waste time fixing the same issues instead of building new things.

"I need AI to handle foundations but want final say on brand expressions”

"I need AI to handle foundations but want final say on brand expressions”

-CO-FOUNDER

-CO-FOUNDER

-CO-FOUNDER

Solution

FERD.ai uses AI to simplify how design systems are created and maintained. It checks for inconsistencies, suggests improvements, and helps export clean, ready-to-use code. My design focused on making these complex features easy to follow clear navigation, quick actions, and a dashboard that shows exactly what needs attention.

Choose Industry

Choose Industry

Goals

  • Cut design system creation time by 85% (from 21 days to 2.5 hours).

  • Ensure 100% consistent, production-ready components.

  • Enable seamless integration for designers and developers.

  • Showcase Ferd AI at GITEX 2025 to drive 5,000+ business adoptions and global recognition.

87%

87%

faster design system setup (3 weeks → 2 hours)

faster design system setup (3 weeks → 2 hours)

83%

83%

fewer design-dev handoff errors

fewer design-dev handoff errors

$2.3M

$2.3M

seed funding secured

seed funding secured

Results

Select Region

Select Region

Select Moodboard

Select Moodboard

Goals

Goals

Process

Process

Design Process

Research Methods


  • Interviewed 6 designers + 3 developers.

  • Analyzed tools (Figr, Supernova, Figma Tokens) for gaps.

I led the end-to-end design process for FERD.ai, starting with research and stakeholder interviews to understand workflow challenges. After analyzing competitors like Figr and Supernova, I defined core pain points and mapped user journeys. to uncover gaps between design and development. From there, I structured the information architecture, created wireframes, and refined the interface in Figma. Throughout, I collaborated with developers and stakeholders to validate flows, run UI audits, and ensure the final design was both scalable and technically sound.

Identify pain points → User Research → Competitor analsysis → User Flows → Prototypes → Usability Study

Identify pain points → User Research → Competitor analsysis → User Flows → Prototypes → Usability Study

Team waste 68% of system setup time on repetitive tasks.

Team waste 68% of system setup time on repetitive tasks.

-RESEARCH OUTPUT

-RESEARCH OUTPUT

-RESEARCH OUTPUT

Button

GENERAL

Market

Dashboard

Active Bids

PRO

Mathew

75

75

74

74

73

73

72

72

71

71

70

70

69

69

68

68

67

67

66

66

65

65

64

64

63

63

62

62

61

61

60

60

59

59

58

58

57

57

56

56

55

55

54

54

53

53

52

52

51

51

50

50

49

49

48

48

47

47

46

46

45

45

44

44

43

43

42

42

41

41

40

40

39

39

38

38

37

37

36

36

35

35

34

34

33

33

32

32

31

31

30

30

29

29

28

28

27

27

26

26

25

25

24

24

23

23

22

22

21

21

20

20

11

11

10

10

9

9

8

8

7

7

6

6

5

5

4

4

3

3

2

2

1

1

div>

div>

div>

div>

button>

button>

1x

1x

<button type

<button type

="button"

="button"

class

class

="rounded-lg text-xs leading-6 font-semibold px-2 ring-2 ring-inset ring-slate-500 text-slate-500

="rounded-lg text-xs leading-6 font-semibold px-2 ring-2 ring-inset ring-slate-500 text-slate-500

dark:text-slate-100

dark:text-slate-100

dark:ring-0

dark:ring-0

dark:bg-slate-500

dark:bg-slate-500

"

"

>

>

button>

button>

svg>

svg>

<path d

<path d

="M18 6v12"

="M18 6v12"

stroke

stroke

="currentColor"

="currentColor"

stroke-width

stroke-width

="2"

="2"

stroke-linecap

stroke-linecap

="round"

="round"

stroke-linejoin

stroke-linejoin

="round"

="round"

/>

/>

<path d

<path d

="M14 12 6 6v12l8-6Z"

="M14 12 6 6v12l8-6Z"

fill

fill

="currentColor"

="currentColor"

stroke

stroke

="currentColor"

="currentColor"

stroke-width

stroke-width

="2"

="2"

stroke-linecap

stroke-linecap

="round"

="round"

stroke-linejoin

stroke-linejoin

="round"

="round"

/>

/>

<svg width

<svg width

="24"

="24"

height

height

="24"

="24"

fill

fill

="none"

="none"

>

>

<button type

<button type

="button"

="button"

class

class

="hidden sm:block lg:hidden xl:block"

="hidden sm:block lg:hidden xl:block"

aria-label

aria-label

="Next"

="Next"

>

>

button>

button>

svg>

svg>

<path d

<path d

="M19 5v3.111c0 .491-.398.889-.889.889H15"

="M19 5v3.111c0 .491-.398.889-.889.889H15"

stroke

stroke

="currentColor"

="currentColor"

stroke-width

stroke-width

="2"

="2"

stroke-linecap

stroke-linecap

="round"

="round"

stroke-linejoin

stroke-linejoin

="round"

="round"

/>

/>

<path d

<path d

="M17.509 16.95c-2.862 2.733-7.501 2.733-10.363 0-2.861-2.734-2.861-7.166 0-9.9 2.862-2.733 7.501-2.733 10.363 0 .38.365.711.759.991 1.176"

="M17.509 16.95c-2.862 2.733-7.501 2.733-10.363 0-2.861-2.734-2.861-7.166 0-9.9 2.862-2.733 7.501-2.733 10.363 0 .38.365.711.759.991 1.176"

stroke

stroke

="currentColor"

="currentColor"

stroke-width

stroke-width

="2"

="2"

stroke-linecap

stroke-linecap

="round"

="round"

stroke-linejoin

stroke-linejoin

="round"

="round"

/>

/>

<svg width

<svg width

="24"

="24"

height

height

="24"

="24"

fill

fill

="none"

="none"

>

>

<button type

<button type

="button"

="button"

aria-label

aria-label

="Skip 10 seconds"

="Skip 10 seconds"

>

>

<div class

<div class

="flex-auto flex items-center justify-evenly"

="flex-auto flex items-center justify-evenly"

>

>

button>

button>

svg>

svg>

<rect x

<rect x

="20"

="20"

y

y

="4"

="4"

width

width

="4"

="4"

height

height

="24"

="24"

rx

rx

="2"

="2"

/>

/>

<rect x

<rect x

="6"

="6"

y

y

="4"

="4"

width

width

="4"

="4"

height

height

="24"

="24"

rx

rx

="2"

="2"

/>

/>

<svg width

<svg width

="30"

="30"

height

height

="32"

="32"

fill

fill

="currentColor"

="currentColor"

>

>

<button type

<button type

="button"

="button"

class

class

="bg-white text-slate-900

="bg-white text-slate-900

dark:bg-slate-100

dark:bg-slate-100

dark:text-slate-700

dark:text-slate-700

flex-none -my-2 mx-auto w-20 h-20 rounded-full ring-1 ring-slate-900/5 shadow-md flex items-center justify-center"

flex-none -my-2 mx-auto w-20 h-20 rounded-full ring-1 ring-slate-900/5 shadow-md flex items-center justify-center"

aria-label

aria-label

="Pause"

="Pause"

>

>

div>

div>

button>

button>

svg>

svg>

<path d

<path d

="M5 5v3.111c0 .491.398.889.889.889H9"

="M5 5v3.111c0 .491.398.889.889.889H9"

stroke

stroke

="currentColor"

="currentColor"

stroke-width

stroke-width

="2"

="2"

stroke-linecap

stroke-linecap

="round"

="round"

stroke-linejoin

stroke-linejoin

="round"

="round"

/>

/>

<path d

<path d

="M6.492 16.95c2.861 2.733 7.5 2.733 10.362 0 2.861-2.734 2.861-7.166 0-9.9-2.862-2.733-7.501-2.733-10.362 0A7.096 7.096 0 0 0 5.5 8.226"

="M6.492 16.95c2.861 2.733 7.5 2.733 10.362 0 2.861-2.734 2.861-7.166 0-9.9-2.862-2.733-7.501-2.733-10.362 0A7.096 7.096 0 0 0 5.5 8.226"

stroke

stroke

="currentColor"

="currentColor"

stroke-width

stroke-width

="2"

="2"

stroke-linecap

stroke-linecap

="round"

="round"

stroke-linejoin

stroke-linejoin

="round"

="round"

/>

/>

<svg width

<svg width

="24"

="24"

height

height

="24"

="24"

fill

fill

="none"

="none"

>

>

<button type

<button type

="button"

="button"

aria-label

aria-label

="Rewind 10 seconds"

="Rewind 10 seconds"

>

>

button>

button>

svg>

svg>

<path d

<path d

="M6 6v12"

="M6 6v12"

stroke

stroke

="currentColor"

="currentColor"

stroke-width

stroke-width

="2"

="2"

stroke-linecap

stroke-linecap

="round"

="round"

stroke-linejoin

stroke-linejoin

="round"

="round"

/>

/>

<path d

<path d

="m10 12 8-6v12l-8-6Z"

="m10 12 8-6v12l-8-6Z"

fill

fill

="currentColor"

="currentColor"

stroke

stroke

="currentColor"

="currentColor"

stroke-width

stroke-width

="2"

="2"

stroke-linecap

stroke-linecap

="round"

="round"

stroke-linejoin

stroke-linejoin

="round"

="round"

/>

/>

<svg width

<svg width

="24"

="24"

height

height

="24"

="24"

fill

fill

="none"

="none"

>

>

<button type

<button type

="button"

="button"

class

class

="hidden sm:block lg:hidden xl:block"

="hidden sm:block lg:hidden xl:block"

aria-label

aria-label

="Previous"

="Previous"

>

>

button>

button>

svg>

svg>

<path d

<path d

="M7 6.931C7 5.865 7.853 5 8.905 5h6.19C16.147 5 17 5.865 17 6.931V19l-5-4-5 4V6.931Z"

="M7 6.931C7 5.865 7.853 5 8.905 5h6.19C16.147 5 17 5.865 17 6.931V19l-5-4-5 4V6.931Z"

fill

fill

="currentColor"

="currentColor"

stroke

stroke

="currentColor"

="currentColor"

stroke-width

stroke-width

="2"

="2"

stroke-linecap

stroke-linecap

="round"

="round"

stroke-linejoin

stroke-linejoin

="round"

="round"

/>

/>

<svg width

<svg width

="24"

="24"

height

height

="24"

="24"

>

>

<button type

<button type

="button"

="button"

aria-label

aria-label

="Add to favorites"

="Add to favorites"

>

>

<div class

<div class

="flex-auto flex items-center justify-evenly"

="flex-auto flex items-center justify-evenly"

>

>

<div class

<div class

="bg-slate-50 text-slate-500

="bg-slate-50 text-slate-500

dark:bg-slate-600

dark:bg-slate-600

dark:text-slate-200

dark:text-slate-200

rounded-b-xl flex items-center"

rounded-b-xl flex items-center"

>

>

div>

div>

div>

div>

div>

div>

div>

div>

<div class

<div class

="text-slate-500

="text-slate-500

dark:text-slate-400

dark:text-slate-400

"

"

>

>

75:50

75:50

div>

div>

24:16

24:16

<div class

<div class

="text-cyan-500

="text-cyan-500

dark:text-slate-100

dark:text-slate-100

"

"

>

>

<div class

<div class

="flex justify-between text-sm leading-6 font-medium tabular-nums"

="flex justify-between text-sm leading-6 font-medium tabular-nums"

>

>

div>

div>

div>

div>

div>

div>

<div class

<div class

="w-1.5 h-1.5 bg-cyan-500

="w-1.5 h-1.5 bg-cyan-500

dark:bg-cyan-400

dark:bg-cyan-400

rounded-full ring-1 ring-inset ring-slate-900/5"

rounded-full ring-1 ring-inset ring-slate-900/5"

>

>

<div class

<div class

="ring-cyan-500

="ring-cyan-500

dark:ring-cyan-400

dark:ring-cyan-400

ring-2 absolute left-1/2 top-1/2 w-4 h-4 -mt-2 -ml-2 flex items-center justify-center bg-white rounded-full shadow"

ring-2 absolute left-1/2 top-1/2 w-4 h-4 -mt-2 -ml-2 flex items-center justify-center bg-white rounded-full shadow"

>

>

div>

div>

div>

div>

<p class

<p class

="text-slate-900

="text-slate-900

h2>

h2>

Scaling CSS

Scaling CSS

<h2 class

<h2 class

="text-slate

="text-slate

>

>

p>

p>

128

128

<abbr title

<abbr title

="Episode"

="Episode"

>

>

<p class

<p class

="text-black-500

="text-black-500

<div class

<div class

="min-w-0

="min-w-0

<img src

<img src

="/full-stack

="/full-stack

loading

loading

="lazy"

="lazy"

/>

/>

<div class

<div class

="flex items

="flex items

<div

<div

class

class

="bg-white border

="bg-white border

>

>

Design System Overview

Design System Overview

Tokens

Tokens

Generate Design System

Generate Design System

Let's Talk

Let’s create your

new Product

Let’s create your

new Product