Meeting people shouldn’t start with a profile.

Most apps lead with faces. GatherUp leads with something to do — padel, coffee, board games.

Typical social apps
  1. 01 Profile
  2. 02 Swipe
  3. 03 Maybe meet

Faces first. Plans optional.

GatherUp
  1. 01 Interest
  2. 02 Book
  3. 03 Meet
  4. 04 Faces unlock

Guest list private until after.

From wanting plans to actually meeting.

The Problem — free time, too many interests, hard to find people, feeling isolated
01 · The Problem
The Struggle — busy friends, unfit events, awkward groups, missing community
02 · The Struggle
The Turning Point — discovering GatherUp and seeing real activities
03 · The Turning Point
A Better Reality — discover, join, do and connect, keep going
04 · A Better Reality

The loop

Discover → join → meet → connect. Hover a step.

01
Discover
02
Join
03
Meet
04
Connect
Hover a step
Discover — activities near you, this week
Join — book free, or pay via InstaPay
Meet — show up. Small groups by default
Connect — chat unlocks. Faces after

Product questions came first.

Hover a question.

Hover a question
Who is this for? People new in the city — or restarting their social life. Not dating.
Why join? A concrete plan this week — not a maybe calendar.
What lowers anxiety? Come for the activity. Guest list private until after. ~8 people.
What does a host need? Fill seats, verify payments, run a series without chaos.
What brings people back? Familiar faces. Chat after. Next week’s drop.
How do they pay? InstaPay host↔attendee. GatherUp isn’t merchant of record.

Making meeting strangers feel easy.

Hover to play.

Discover

What’s on near you — interests first.

Context

Place, time, price, size — before you commit.

Book

One gold CTA — free hold or pay.

Connect

Chat unlocks when it matters.

One system. Three surfaces.

Flutter · web · admin — EN + AR from the same tokens.

Tier 0
Primitives
Brand gold
Night
Chalk
Sage
Tier 1
Foundations
Semantic light/dark
Lexend + IBM Plex AR
4px spacing
Motion tokens
Tier 2
Core components
Buttons & chips
Cards & lists
Sheets & nav
~25 blocks
Tier 3
Surfaces
Flutter app
Next.js web
Admin
Tier 4
Patterns
Book sheet
Interest hub
Feed rail
Privacy unlock

Color

Brand #E5B84A
Night #000000
Chalk #FBF7F1

Light · dark

One token set. Brand gold stays put.

EN · AR

Lexend + IBM Plex Arabic. RTL first-class.

Type

Lexend

Pull up a chair.

IBM Plex Sans Arabic

قابل ناس بيشاركوك اهتماماتك

Components

~25 blocks — live from the app.

Buttons

Primary gold CTA with press spring.

Chips

Filter by interest — activity first.

Sheets

Book a Spot — confirm in place.

Shared motion language

Same durations in code. Reduce Motion respected.

Micro~150msPress
Quick~250msTab · chip
Standard~350msSheet
Screen~500msPush

Tab

Push

Sheet

Privacy

I also built what I designed.

Figma → Flutter → Widgetbook → App Store.

01DesignFlows · UI · system
02CodeTokens · components
03ShipiOS · Android · web

Constraints shaped simpler UI. Changing a token updated the live app.

What shipping changed

Fixes Figma never caught.

Before

Bottom snackbars

Feedback hid behind the floating bookings bar.

Learned

One feedback channel — from the top.

After

TopSnackBar as a system rule.

Before

Magic spacing numbers

8, 12, 14, 16 — almost the same, never quite.

Learned

Close enough looks like a bug.

After

4px token scale + DsGap.

Before

Faint text on dark cards

Captions failed WCAG AA (~3.6:1).

Learned

Contrast is a token problem, not a one-screen hotfix.

After

inkFaint lifted to pass AA.

Before

Fabricated social proof

Vanity counts that weren’t real.

Learned

Store audit + trust — fake numbers had to go.

After

Honest counts only. Or none.

After launch

Real usage in Cairo and beyond.

1,516
Users
150 new this week
1,522
Total bookings
95.7%
Show-up rate
Past events
29%
Repeat booking rate
201 of 692 members booked again
170
Weekly bookings
+29% vs last week
4.3%
No-show rate

Shipped · iOS · Android · Web · Admin · Widgetbook

Where members are

Greater Cairo first — city on profile

  • Cairo 63.8%
  • Giza 9.5%
  • 6th of October 9.2%
  • New Cairo 5.8%

Top interests

Most common picks during onboarding

  • Music 590
  • Outdoors 560
  • Food 530
  • Board Games 510
GatherUp

Designed and shipped end to end.

← All case studies