DECISION LOG · DADO

Payments underneath. Nothing on the surface allowed to feel like checkout.

Payments underneath. Nothing on the surface allowed to feel like checkout.

Payments underneath. Nothing on the surface allowed to feel like checkout.

DADO is a gifting platform where people fund one wish together. This is the same product as the DADO case study, told the other way round — six decisions that held the line between a gift and a transaction, and what each one cost.

DADO is a gifting platform where people fund one wish together. This is the same product as the DADO case study, told the other way round — six decisions that held the line between a gift and a transaction, and what each one cost.

DADO is a gifting platform where people fund one wish together. This is the same product as the DADO case study, told the other way round — six decisions that held the line between a gift and a transaction, and what each one cost.

ROLE

Product Designer

DURATION

July 2026 to present

SCOPE

Design system, core flows, editorial

STACK

React, TypeScript, Tailwind, Supabase, Stripe

01 — THE BRIEF

One meaningful thing, funded by the people who care.

DADO is built around a single idea: instead of buying someone a gift on your own, you create a wish for one meaningful thing, and the people who care about that person contribute toward it together. A wish holds the product, the story behind it, a delivery date and a guest list. Once it is funded, DADO buys the item and ships it.

Around that core sit a wishlist and connections layer, and an editorial layer of seasonal chapters and gift guides. The whole product is positioned as a private members’ club rather than a shop — restrained, editorial, and deliberately unlike a checkout.

02 — THE TENSION

Group gifting products usually feel like fundraising tools.

A progress bar, a share button and a running total make generosity look like a campaign. That framing works for charity. It works badly for a birthday.

THE DESIGN TENSION

The mechanics underneath are payments infrastructure, but nothing on the surface is allowed to feel like checkout.

Every decision below is that tension applied to one surface. Most of them cost something real — usually money, sometimes control, once a brand colour.

03 — THE DECISION LOG

Six decisions, and what each one cost.

Each could have gone the other way. Tension, options, the call, and the price of the call — the price is the part usually left out.

D01

Pledging holds the card. Nothing is charged today.

TENSION

The moment a contributor is charged, the exchange becomes a purchase. But a wish that is never funded still has to be paid for somehow.

OPTIONS WEIGHED

·

Charge on pledge, refund if the wish fails

·

Charge only when the wish is fully funded

Hold the card; charge a week before the date, with an email three days ahead

DECISION

Hold, not charge. The contributor can withdraw before the reminder and nothing moves. If the wish falls short, they are still charged, and the recipient gets what was raised as a brand gift card.

WHAT IT COST

Every hold expires. Cards change, limits get hit, and some pledges fail at charge time weeks after the gesture was made — with no clean way to ask again.

D02

Guests contribute without an account

TENSION

Most contributors arrive by a link, may never have heard of DADO, and are being asked for money on a first visit.

OPTIONS WEIGHED

·

Require an account — every contributor becomes a user

·

Guest checkout with a one-line sign-up at the end

Guest contribution, full stop. Name, amount, note, authorise.

DECISION

Guests contribute without creating an account. Amounts are framed as gestures rather than prices, and the authorisation is written in plain language on the screen where you commit — not in the terms.

WHAT IT COST

A large share of the people who fund wishes never become members, so the network that makes DADO worth returning to grows more slowly than the money does.

D03

Privacy is per item, never a list switch

TENSION

The thing you save for yourself and the thing you want people to buy you are rarely the same — but they live in the same list.

OPTIONS WEIGHED

·

One visibility setting per list

·

Two lists: private and shareable

An audience setting on every item, enforced on screen, in the database, and on every shared link

DECISION

Per item, across four audience levels. A private item stays private wherever the list travels, because the rule is enforced in three places rather than one.

WHAT IT COST

Four times the decisions for the person saving, and a real chance a shared list looks empty to the people it was shared with.

D04

A connection is a request, not an add

TENSION

Connections is where returning users live — their people, their dates, their lists. It only works if people trust what is visible to whom.

OPTIONS WEIGHED

·

Add anyone; they can remove themselves

A request the other person accepts, and nobody is added to an occasion without saying yes

DECISION

Consent both ways. A wishlist is only ever seen by the people its owner chose. Someone not on DADO can still be added by hand so their dates stay on your calendar — but they see nothing.

WHAT IT COST

Friction at the exact moment the product is trying to grow. Every circle starts empty and stays small until people accept.

D05

Editorial breaks the container

TENSION

The seasonal chapters and gift guides carry the brand more than any other surface, but the product lives inside one centred container.

OPTIONS WEIGHED

·

Keep editorial inside the same container as everything else

Full-bleed editorial on its own gutter scale

DECISION

Full-bleed. Browsing is meant to read like a magazine and still end on something you can buy, and a magazine does not sit inside a form’s margins.

WHAT IT COST

Two layout systems to maintain, and a visible seam where editorial hands off to product.

D06

Retire the failing colours — by job, not globally

TENSION

The brand’s soft taupes measured 3.71:1 as text against white, well under the 4.5:1 the standard requires. Darkening them everywhere would have killed the brand.

OPTIONS WEIGHED

·

Darken the whole palette until it passes

·

Leave it; the brand is the brand

Split each colour by the job it does. Retire it as text; keep it for borders, icons and large display accents

DECISION

By job. Text uses a deeper taupe that clears the threshold. Borders, focus rings and icons only need 3:1 and stayed. Large display accents kept the original — that treatment is a brand signature and passes at large-text size.

WHAT IT COST

About 750 components had hardcoded the retired values and had to be swept, and two near-misses were left in place and recorded rather than fixed, because both fixes cost more than they saved.

04 — EVIDENCE

The screens those decisions produced.

Every stage of both sides of One Big Wish, the five editorial surfaces, and the system that holds them together. Click a stage to see it, and scroll inside a frame to see the whole page.

EXHIBIT · MAKING A WISH — D01

1

Start

2

Your wish

3

Curate products

4

Where & when

5

Invite & privacy

6

Review & confirm

7

Wish is live

One Big Wish, Start

Screen 1 of 7 · Start

My Wishes

Every wish you have asked for, in one place. Each card shows the occasion, how much has been pledged against the goal, the fulfilment date and the days left, with filters for active, fulfilled, closed and draft.

The purpose is a glance-level answer to one question: where does each wish stand? Create One Big Wish opens the wizard.

The five-step creation wizard with a persistent stepper, so you always know how much is left before you commit anything.

EXHIBIT · CONTRIBUTING — D01, D02

1

The wish

2

Amount

3

Payment

4

Add a note

5

Review

6

Thank you

Contributing, The wish

Screen 1 of 6 · The wish

What an invited person opens

The curated items fill the top of the page, with the occasion and who invited you. Below it: how much has been pledged, the last day to give, the day the gift is for, and who has given so far.

The purpose is to make the ask read as an invitation into someone’s story, not a fundraising page.

From opening the wish you were invited to, to the thank-you screen. Amounts framed as gestures; the authorisation in plain language on the screen where you commit.

EXHIBIT · EDITORIAL — D05

1

The Edit

2

The List Edit

3

DADO Presents

4

DADO Editions

5

Calendar

The Edit page

Screen 1 of 5 · The Edit

The magazine front door

A seasonal hero leads, followed by curated collections, Off-Script, Objects of Desire, The Definitive, and the City Guides, Seasons and Atelier chapters, before Trending Now.

Its purpose is browsing that reads like a magazine and still ends on something you can actually buy. It runs full-bleed on its own gutter scale.

The five editorial surfaces, full-bleed on their own gutter scale.

EXHIBIT · THE SYSTEM — D06

1

Colour

2

Type

3

Buttons

4

Cards

Warm

50

#FAF7F2

75

#F7F2EC

100

#F4EFE8

150

#F1E8DE

200

#EEE5DB

250

#E8DDD0

300

#E6DDD1

400

#DDD1C3

450

#C4B9A8

500

#BFAF9B

600

#B3A28C

650

#9A8872

700

#9A8F83

750

#7C6C5B

800

#5E544C

900

#3A312B

950

#2A241F

975

#191512

990

#181411

Gray

grey1

#E7E8E8

grey2

#B4B5B6

grey3

#757575

grey4

#66686A

grey5

#4D4F50

Background

Surface-01

#FDFBF7

Surface-02

#F4EFE8

Surface-03

#080C15

Brand

Primary

#B3A28C

Secondary

#2A241F

Taupe Soft

#C4B9A8

Text

Secondary

#918276

Primary

#080C15

Labels

#757575

Placeholder

#B4B5B6

Inverse

#FFFFFF

Border

Subtle

#DDD1C3

Strong

#918276

Accent

Forest

#2C3E2D

Midnight

#080C15

State

Success bg

#EAF1EA

Success

#2B972B

Error bg

#F6E9E7

Error

#B60218

Disable

#D7D8D9

Disable dk

#7F8183

CTA

Primary

#031A34

Hover

#000205

Secondary

#BFAF9B

Sec hover

#9A8872

FOUNDATION

Colour tokens

A warm-ivory and deep-midnight palette with taupe accents, defined as semantic tokens rather than raw hex, so a component asks for secondary text and never for a colour.

Two typefaces, semantic tokens, zero border radius by default. The system that enforces the restraint rather than encouraging it.

05 — THE SYSTEM’S EXCEPTIONS

A system that only records the ideal state gets abandoned the first time reality disagrees with it.

The positioning is a private members’ club, and that only holds if the restraint is enforced. So the system is a set of hard constraints in one source of truth: two typefaces and never a third, a fixed palette as semantic tokens, zero border radius, no shadows, no gradients, no decorative icons. Hierarchy comes from weight and size, never from adding a colour.

The part I would point to as the real work is not the token list. It is that the system documents its own exceptions — what was bent, when, and why.

Two legacy hex values, left in place

Sweeping them would have cost more visually than the consistency was worth. Recorded, with the reasoning, and left alone.

Two contrast near-misses, not quietly fixed

Both fixes were design-owner calls with real trade-offs. The register names them rather than pretending the palette is clean.

Large display accents keep the original taupe

It fails as body text and passes at large-text size. That treatment is a brand signature, so the rule was scoped rather than applied blindly.

3.71:1

what the retired secondary text measured on white, against 4.5:1

750

components swept off the retired values

2

near-misses recorded rather than quietly fixed

06 — ADOPTION

What shipped, and what is enforced.

DADO is live. The shipped product is roughly 139 page templates and 361 components, all drawn from the one source of truth. The palette rules are enforced by an automated contrast test in the codebase, so the colours cannot drift back to the values that were retired.

139

PAGE TEMPLATES

361

COMPONENTS

2

TYPEFACES

0

BORDER RADIUS

What I do not have is usage data — how many wishes are created, how many guests convert to members, how often a held card fails at charge time. Those are the numbers that would tell you whether D01 and D02 were right, and they belong to the client. This page records the reasoning, not the result.

07 — WHAT I WOULD CHANGE

Two things, in the order I would fix them.

Instrument the held-card failure rate from day one

D01 trades a checkout feel for a real risk: holds expire. Without a number on how often a pledge fails weeks after the gesture, nobody can say whether the reminder timing is right, and the decision cannot be revisited on evidence.

Give guests a reason to stay, without an account wall

D02 is right and it is costly. The network that makes DADO worth returning to grows slowly when most funders never become members. The fix is not a sign-up prompt — it is a reason, after the thank-you screen, to see the recipient open the gift.

The strongest thing about this project is not the interface. It is that the decisions are written down where the people implementing them actually read — the reasoning attached, the exceptions named. Writing down why a rule exists is what makes it survive the next person with a deadline.

Email

Linkedin

Behance

Instagram

Copyright @2026 Manish Durgude