Discover
What’s on near you — interests first.
Case study
Meet through shared interests — not profiles.
Product · UX/UI · Design system · Flutter
Most apps lead with faces. GatherUp leads with something to do — padel, coffee, board games.
Faces first. Plans optional.
Guest list private until after.
Discover → join → meet → connect. Hover a step.
Hover a question.
Hover to play.
What’s on near you — interests first.
Place, time, price, size — before you commit.
One gold CTA — free hold or pay.
Chat unlocks when it matters.
Flutter · web · admin — EN + AR from the same tokens.
One token set. Brand gold stays put.
Lexend + IBM Plex Arabic. RTL first-class.
Lexend
Pull up a chair.
IBM Plex Sans Arabic
قابل ناس بيشاركوك اهتماماتك
~25 blocks — live from the app.
Primary gold CTA with press spring.
Filter by interest — activity first.
Book a Spot — confirm in place.
Same durations in code. Reduce Motion respected.
Figma → Flutter → Widgetbook → App Store.
Constraints shaped simpler UI. Changing a token updated the live app.
Fixes Figma never caught.
Feedback hid behind the floating bookings bar.
One feedback channel — from the top.
TopSnackBar as a system rule.
8, 12, 14, 16 — almost the same, never quite.
Close enough looks like a bug.
4px token scale + DsGap.
Captions failed WCAG AA (~3.6:1).
Contrast is a token problem, not a one-screen hotfix.
inkFaint lifted to pass AA.
Vanity counts that weren’t real.
Store audit + trust — fake numbers had to go.
Honest counts only. Or none.
Real usage in Cairo and beyond.
Shipped · iOS · Android · Web · Admin · Widgetbook
Greater Cairo first — city on profile
Most common picks during onboarding
Designed and shipped end to end.