Files
calvana/PERSONA_ANALYSIS.md
Omair Saleh a9b3b70dfc Telepathic Collect: link-first, flattened hierarchy, embedded leaderboard
Core insight: The primary object is the LINK, not the appeal.
Aaisha doesn't think 'manage appeals' — she thinks 'share my link'.

## Collect page (/dashboard/collect) — complete rewrite
- Flattened hierarchy: single-appeal orgs see links directly (no card to click)
- Multi-appeal orgs: quiet appeal switcher at top, links below
- Inline link creation: just type a name + press Enter (no dialog)
- Quick preset buttons: 'Table 1', 'WhatsApp Group', 'Instagram', etc.
- Share buttons are THE primary CTA on every link card (Copy, WhatsApp, Email, Share)
- Each link shows: clicks, pledges, amount raised, conversion rate
- Embedded mini-leaderboard when 3+ links have pledges
- Contextual tips when pledges < 5 ('give each volunteer their own link')
- New appeal creation is inline, auto-creates 'Main link'

## Appeal detail page (/dashboard/events/[id]) — brand redesign
- Sharp edges, gap-px grids, typography-as-hero
- Same link card component with share-first design
- Embedded leaderboard section
- Inline link creation (same as Collect)
- Clone appeal button
- Appeal details in collapsed <details> (context, not hero)
- Download all QR codes link
- Public progress page link

## Leaderboard page — brand redesign
- Total raised as hero number (dark section)
- Progress bars relative to leader
- Medal badges for top 3
- Conversion rate badges
- Auto-refresh every 10 seconds (live event mode)

## Route cleanup
- /dashboard/events re-exports /dashboard/collect (backward compat)
- Old events/page.tsx removed (was duplicate)

5 files changed, 3 pages redesigned
2026-03-04 21:13:32 +08:00

5.0 KiB

CharityRight Admin — Persona Analysis & Journey Design

The Real Users (Not What the Code Assumes)

Only 2-3 people actually use this admin panel regularly:

  1. Sahibah Ali — Supporter care / operations (last active 2 weeks ago)
  2. Jasmine Begum — Operations / fundraiser management (last active 2 weeks ago)
  3. Omair — Technical oversight (Superadmin)

128 accounts have Superadmin role, but 120+ are dormant test accounts, old staff, or event-specific accounts created years ago.


Persona 1: "Sahibah" — The Supporter Care Person

Who she is: A charity staff member who handles donor inquiries. When someone emails donations@charityright.org.uk or calls asking about their donation, she needs to help them.

Her real questions (not what the admin shows her):

  • "Someone emailed saying their donation didn't go through — can I find it?"
  • "A donor wants to change their regular giving amount — where is their subscription?"
  • "Someone wants a copy of their receipt — can I resend it?"
  • "A donor says they donated £50 but only see £45 — what happened?" (admin fee)
  • "Someone wants to cancel their monthly giving"
  • "A donor wants to claim Gift Aid — did they tick the box?"
  • "How many donations did we get today?"

Her pain right now:

  • She has to search Customers, then click Edit, then scroll to the Donations tab, then find the donation, then click it — 4 clicks just to see someone's donation
  • She can't search by donation reference number from the main search
  • She can't see at a glance if a donor has Gift Aid enabled
  • There's no way to add a note saying "Called on 4 March, wants refund"
  • She can't see a donor's total lifetime value
  • The dashboard shows her system metrics she doesn't understand

What she WANTS when she logs in: → A search box. Type an email. See everything about that person. Done.

Persona 2: "Jasmine" — The Campaign Manager

Who she is: Manages fundraising campaigns and reviews the fundraiser queue.

Her real questions:

  • "Did anyone create a new fundraiser page today?"
  • "How is the Ramadan campaign doing?"
  • "Which fundraisers are raising the most right now?"
  • "Is there spam in the queue?"
  • "How much total did we raise this month?"
  • "I need to set up donation pages for the new Qurbani campaign"

Her pain right now:

  • The fundraiser queue (84 pending) is overwhelming — she doesn't know which ones to look at first
  • She can't see a leaderboard of top fundraisers
  • She has to check individual fundraisers one by one
  • No way to see campaign performance at a glance
  • The "Appeals" name means nothing to her — she thinks of them as "fundraising pages"

What she WANTS when she logs in: → A dashboard showing campaign health. The queue auto-sorted by urgency. A leaderboard.

Persona 3: "Omair" — Technical Admin

His real questions:

  • "Is anything broken?"
  • "Are payments going through?"
  • "Is the Engage sync working?"
  • "Are emails being sent?"

His pain: He doesn't use the admin panel for daily work — he goes to Stripe, server logs, etc. The admin panel doesn't show him system health.


What the Admin Currently Shows vs What Users Need

What Admin Shows What Users Need
"Customers" table with 21K rows "Look up a donor" search box
"Donations" table with 30K rows "Today's donations" + donor-linked view
"Approval Queues" table "New fundraisers to review" with AI pre-sorted
Empty dashboard At-a-glance: money today, pending tasks, problems
15 navigation items 3-4 things they actually click
"Event Logs" with 2.2M rows "Is anything broken?" yes/no
"Scheduled Giving Donations" "Monthly supporters" with health status
Separate "Users" and "Customers" Unified donor profile

The Journey Redesign

Morning Login — "What happened while I was away?"

Current: Blank page → navigate to something Should be: Dashboard that TELLS you what needs attention

"A donor just called" — Find & Help

Current: 7 clicks across 3 pages Should be: Type name/email in global search → see full donor profile → act

"Review new fundraisers" — The Queue

Current: Open list → click each one → read → decide → go back → repeat Should be: AI-pre-sorted list → most important first → approve/reject inline → done

"How are we doing?" — Performance

Current: Nothing. Absolutely nothing. Should be: Revenue chart, top fundraisers, campaign health, donor count


Design Principles for the Rebuild

  1. Answer questions, not show tables. "How much did we raise today?" → Show the number, not a filtered table.
  2. One search to rule them all. Cmd+K finds donors, donations, fundraisers — by any field.
  3. Surface problems, don't hide them. Failed payments, spam fundraisers, broken syncs → badges, alerts.
  4. Use the language they use. Not "Appeals" but "Fundraising Pages." Not "Customers" but "Donors."
  5. Anticipate the next action. After viewing a donor, offer: "Resend receipt" / "Add note" / "View in Stripe."