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
This commit is contained in:
113
PERSONA_ANALYSIS.md
Normal file
113
PERSONA_ANALYSIS.md
Normal file
@@ -0,0 +1,113 @@
|
||||
# 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."
|
||||
Reference in New Issue
Block a user