Admin Spec — Index & Foundations
QuranFlow Admin Backend Redesign -- Specification Index
1. Purpose and Scope
This spec covers the complete redesign of the QuranFlow admin backend navigation and screen structure, based on the Enhanced Candidate A recommendation from Workstream 1 (navigation redesign) converged with Workstream 2 (billing integration). The spec is mockup-ready -- detailed enough for a designer to create wireframes without asking clarifying questions.
Covers: Admin backend navigation, all screen specifications, billing integration, role-based access
Does not cover: Student-facing iOS app, checkout frontend, Stripe API implementation details, mobile responsive design
2. Design Foundations
The Enhanced Candidate A architecture was selected through a structured multi-candidate evaluation in Workstream 1, scoring 30/35 (highest of 3 candidates). It was then augmented with the strongest ideas from Candidates B and C.
Core (from Candidate A -- scored 30/35, highest of 3 candidates)
- 8+1 domain sidebar matching the admin's mental model: Student Management, Semester Management, Content, Scheduling, Teacher Management, Billing & Payments, Reporting, Admin & System + Dashboard
- Rich multi-tab entity pages for Students (6 tabs), Semesters (4 tabs), TAs (4 tabs)
- Billing as first-class dual-level domain -- aggregate domain-level views (Payment Overview, Payment Plans, Coupons, Family Plans, Scholarships & Deferments) plus entity-page-level tabs (Student Detail > Payments tab, Semester Hub > Close Workflow billing step)
- Role-based sidebar filtering for TAs (see only their students, schedule, submissions) and view-only admins (full visibility, no write actions)
Incorporated from Candidate B (dashboard depth)
- Enhanced operational dashboard with configurable alert tiles (failed payments, pending submissions, TA response times)
- Issue Queue for student-to-admin communication, surfaced as a dedicated screen under Admin & System
- Phase-aware dashboard tiles with semester lifecycle prompts (Setup / Active / Close) and progress indicators
Incorporated from Candidate C (search + content integration)
- Global search bar resolving to entity pages from any screen -- type a student name, TA name, or semester label and jump directly to the relevant detail page
- Deeper content status integration on Semester Hub -- inline previews of content readiness, deep links to Content screens with the semester pre-filtered, and a "return to checklist" affordance so the admin never loses context during semester setup
Evidence base
- Interview: The admin proposed a domain-based structure herself (Q4: "I would group things by what they're about -- students, content, scheduling")
- WS1.5 scoring: Enhanced Candidate A scored highest on mental model match (5/5), billing accommodation (5/5), and secondary user learnability (5/5)
- Sensitivity analysis: Robust under all tested weighting scenarios -- remained the top candidate even when individual criteria weights were doubled or halved
3. Master Navigation Tree
Dashboard (NEW -- operational overview with alerts and phase prompts)
Student Management
Students <- from People
[Student Detail Page] (NEW -- rich multi-tab profile)
[Tab: Profile]
[Tab: Submissions]
[Tab: Payments] (NEW)
[Tab: Appointments]
[Tab: Semester History] (NEW)
[Tab: Actions]
Submissions (Assessments) <- from Program
Promoted Students <- from Reports
Failed Sign Ups <- from Reports
Semester Management
Semesters <- from top-level
[Semester Hub Page] (NEW -- rich multi-tab semester view)
[Tab: Overview]
[Tab: Setup Checklist] (NEW)
[Tab: Enrollment] (NEW)
[Tab: Close Workflow] (NEW)
Welcome Package <- from Settings
Email Management <- from Settings
Tags <- from Settings
Operations (bulk actions) <- from Settings
Content
Video Lessons <- from Program
Resources <- from Program
Recordings <- from Program
Tutorials <- from Program
MCQ Questions <- from Program
Quizzes <- from Program
Scheduling
Calendar View (NEW)
Live Sessions <- from Program
Upcoming Appointments <- from Appointments
TA Schedules <- from Appointments
Holidays <- from Appointments (merged with Live Session Holidays)
Teacher Management
Teaching Assistants <- from People
[TA Detail Page] (NEW -- rich multi-tab TA view)
[Tab: Profile]
[Tab: Schedule]
[Tab: Students & Groups] (NEW)
[Tab: Performance] (NEW)
Teacher Assignment Criteria <- from Settings
TA Reports <- from Reports
Student Groups (NEW -- surfaced to nav)
Billing & Payments (NEW section)
Payment Overview (NEW)
Payments (transaction history) <- from Reports
Payment Plans <- from Settings
Coupons <- from Settings
Family Plans (NEW)
Scholarships & Deferments (NEW)
Reporting
Student Report <- from Reports
Referrals <- from Reports
Specific Reports <- from Reports
Student Composition (NEW)
Logs <- from Settings
Admin & System
Admins <- from People
Settings (General) <- from Settings
Notifications <- from Settings
Support Links <- from Students Management
Issue Queue (NEW -- from Candidate B)
Screen counts: 9 domains, 35 existing screens (all placed), 13 new screens/views, 1 dissolved screen (Students Management grab-bag).
4. Screen Placement Map
Complete mapping of all 35 current screens to their new locations in the redesigned navigation.
| # | Current Location | Screen | New Location | Change Type |
|---|---|---|---|---|
| 1 | Top-level | Dashboard | Dashboard | REBUILT |
| 2 | Top-level | Semesters | Semester Management > Semesters | ENHANCED (Hub Page) |
| 3 | Program | Video Lessons | Content > Video Lessons | MOVED |
| 4 | Program | Submissions | Student Management > Submissions | MOVED |
| 5 | Program | Resources | Content > Resources | MOVED |
| 6 | Program | Live Sessions | Scheduling > Live Sessions | MOVED |
| 7 | Program | Recordings | Content > Recordings | MOVED |
| 8 | Program | Tutorials | Content > Tutorials | MOVED |
| 9 | Program | MCQ Questions | Content > MCQ Questions | MOVED |
| 10 | Program | Quizzes | Content > Quizzes | MOVED |
| 11 | People | Students | Student Management > Students | ENHANCED (Detail Page) |
| 12 | People | Teaching Assistants | Teacher Management > Teaching Assistants | ENHANCED (Detail Page) |
| 13 | People | Admins | Admin & System > Admins | MOVED |
| 14 | People | Students Management | DISSOLVED | Tools redistributed |
| 15 | Reports | Student Report | Reporting > Student Report | MOVED |
| 16 | Reports | TA Reports | Teacher Management > TA Reports | MOVED |
| 17 | Reports | Payments | Billing & Payments > Payments | MOVED |
| 18 | Reports | Promoted Students | Student Management > Promoted Students | MOVED |
| 19 | Reports | Failed Sign Ups | Student Management > Failed Sign Ups | MOVED |
| 20 | Reports | Referrals | Reporting > Referrals | MOVED |
| 21 | Reports | Specific Reports | Reporting > Specific Reports | MOVED |
| 22 | Appointments | Upcoming Appointments | Scheduling > Upcoming Appointments | MOVED |
| 23 | Appointments | TA Schedules | Scheduling > TA Schedules | MOVED |
| 24 | Appointments | Holidays | Scheduling > Holidays | MERGED (+ Live Session Holidays) |
| 25 | Settings | Notifications | Admin & System > Notifications | MOVED |
| 26 | Settings | Tags | Semester Management > Tags | MOVED |
| 27 | Settings | Payment Plans | Billing & Payments > Payment Plans | MOVED |
| 28 | Settings | Coupons | Billing & Payments > Coupons | MOVED |
| 29 | Settings | Settings (General) | Admin & System > Settings | MOVED |
| 30 | Settings | Operations | Semester Management > Operations | MOVED (absorbs Level 0 promotion) |
| 31 | Settings | Email Management | Semester Management > Email Management | MOVED |
| 32 | Settings | Welcome Package | Semester Management > Welcome Package | MOVED |
| 33 | Settings | Teacher Assignment Criteria | Teacher Management > Teacher Assignment Criteria | MOVED |
| 34 | Settings | Logs | Reporting > Logs | MOVED |
| 35 | Students Mgmt | Support Links | Admin & System > Support Links | MOVED |
Dissolved Screen #14 Redistribution
The current "Students Management" screen under People is a grab-bag of unrelated tools. Its contents are redistributed as follows:
- Level 0 promotion --> Semester Management > Operations (absorbed into bulk actions)
- Live Session Holidays --> Scheduling > Holidays (merged with Appointments > Holidays into a single unified holidays screen)
- Support Links --> Admin & System > Support Links (standalone screen)
5. New Screens Inventory
| Screen | Domain | Type | Purpose |
|---|---|---|---|
| Dashboard | Top-level | Full rebuild | Operational alerts, phase prompts, quick actions. Replaces the current minimal dashboard with configurable alert tiles, semester lifecycle indicators, and one-click navigation to problem areas. |
| Student Detail Page | Student Management | Multi-tab entity page | Consolidated student view with 6 tabs (Profile, Submissions, Payments, Appointments, Semester History, Actions). Eliminates the need to visit 5+ separate screens and external tools to understand a student's full picture. |
| Semester Hub Page | Semester Management | Multi-tab entity page | Consolidated semester view with 4 tabs (Overview, Setup Checklist, Enrollment, Close Workflow). Transforms semester setup from a 19+ screen scavenger hunt into a guided checklist experience. |
| TA Detail Page | Teacher Management | Multi-tab entity page | Consolidated TA view with 4 tabs (Profile, Schedule, Students & Groups, Performance). Combines TA information currently spread across People, Appointments, and Reports. |
| Calendar View | Scheduling | New screen | Unified visual calendar showing live sessions and 1:1 appointments together. Filterable by TA, gender, level. Replaces the need to cross-reference separate session and appointment lists. |
| Payment Overview | Billing & Payments | New screen | Aggregate billing health dashboard showing total active subscriptions, failed payment count and trend, revenue summary, and alert-worthy accounts. Entry point for billing triage. |
| Family Plans | Billing & Payments | New screen | Family group billing management. Create family groups, link students, manage shared billing (family discount applied at Stripe level). Full CRUD for family entities. |
| Scholarships & Deferments | Billing & Payments | New screen | Special billing arrangement management. Scholarship tiers (Full, 50%, 25%) and payment deferments (pause_collection via Stripe). Track reasons, durations, and approvals. |
| Student Composition | Reporting | New screen | Student body breakdown report showing distribution by level, gender, geographic region, enrollment status, and semester-over-semester trends. |
| Student Groups | Teacher Management | Surfaced to nav | Groups list previously only accessible through individual TA pages. Now a standalone list view showing all groups, their assigned TA, student count, and session schedule. |
| Issue Queue | Admin & System | New screen | Student-reported issues and admin-to-admin tickets. Provides a centralized place for tracking support requests that currently live in WhatsApp, email, and verbal communication. |
6. Cross-Domain Workflow Index
These are the 6 core admin workflows mapped to their screen sequences under the new navigation structure. Each workflow shows the specific screens visited and how cross-domain navigation flows work.
WF1: Semester Setup (2-3x/year, Critical)
Current state: 19+ screens, 50-80 clicks, 3 external tools (Google Sheets, Vimeo, manual checklists) Enhanced A: 8-10 screens, 20-35 clicks, 1 external tool (Vimeo for video URLs)
Screen sequence:
- Dashboard -- phase prompt shows "Semester Setup" with progress bar
- Semester Management > Semesters -- create new semester or clone from previous
- Semester Hub > Setup Checklist tab -- guided checklist of all setup tasks with completion status
- Content > Video Lessons -- deep link from checklist, semester pre-filtered. Upload/assign video lessons.
- Click "return to checklist" affordance --> Semester Hub > Setup Checklist tab
- Content > Resources -- deep link from checklist, semester pre-filtered. Upload supplementary materials.
- Click "return to checklist" --> Semester Hub > Setup Checklist tab
- Semester Hub > Enrollment tab -- review enrollment numbers, assign students to levels
- Teacher Management > Teaching Assistants -- assign TAs to groups/levels for this semester
- Semester Management > Welcome Package -- configure welcome email content
- Semester Management > Email Management -- schedule enrollment confirmation emails
WF2: Student Support (frequent, ad-hoc)
Current state: 5-7 screens, 15-25 clicks, 3 external tools (Stripe dashboard, Google Sheets, WhatsApp) Enhanced A: 1-2 screens, 4-7 clicks, 0 external tools
Screen sequence:
- Global Search -- type student name from any screen
- Student Management > Students > [Student Detail Page] -- land directly on the student's profile
- All information available via tabs without leaving the page:
- Profile tab: contact info, enrollment status, level, TA assignment
- Submissions tab: all audio submissions with grades and feedback
- Payments tab: Stripe subscription status, payment history, failed payments (inline, no Stripe dashboard needed)
- Appointments tab: upcoming and past 1:1 sessions
- Semester History tab: progression across semesters, promotion/retention record
WF3: Semester Close (2-3x/year, Critical)
Current state: 8+ screens, 40-70 clicks, 3 external tools (Google Sheets, Stripe dashboard, manual tracking) Enhanced A: 4-6 screens, 15-25 clicks, 0 external tools
Screen sequence:
- Semester Management > Semesters > [Semester Hub > Close Workflow tab] -- gated multi-step process
- Step 1: Review EOC -- view end-of-course assessment results, identify students above/below 3.5 threshold
- Step 2: Confirm Promotions -- approve promotion list, handle edge cases (manual overrides with reason)
- Step 3: Bulk Payment Setup -- gated behind Step 2 completion. Create/update Stripe subscriptions for promoted students. Handle plan changes for level transitions.
- Step 4: Handle Leavers -- linked deactivation: deactivate student account + cancel Stripe subscription in one action. Record leave reason.
- Step 5: Verify -- summary view confirming all close tasks completed. Show any unresolved items.
WF4: Daily Monitoring (every session)
Current state: 4-5 screens, 12-18 clicks, 3 external tools (Stripe dashboard, Google Sheets, email) Enhanced A: 1-3 screens, 3-8 clicks, 0 external tools
Screen sequence:
Path A -- Failed payments:
- Dashboard -- alert tile shows "3 Failed Payments"
- Click tile --> Billing & Payments > Payment Overview -- filtered to failed payments
- Click student name --> Student Management > Students > [Student Detail Page > Payments tab] -- see full payment history, retry or contact
Path B -- TA performance:
- Dashboard -- alert tile shows "2 TAs: Response Time > 48h"
- Click tile --> Teacher Management > Teaching Assistants -- filtered to flagged TAs
- Click TA name --> [TA Detail Page > Performance tab] -- see response time trends, submission backlog
WF5: Scheduling / Appointments (regular)
Current state: 4-6 screens, 12-20 clicks, 2 external tools (Google Sheets, email) Enhanced A: 1-2 screens, 5-8 clicks, 0 external tools
Screen sequence:
Path A -- Calendar management:
- Scheduling > Calendar View -- unified view of live sessions and 1:1 appointments
- Filter by TA, gender, or level
- Click to create or edit a session/appointment directly on the calendar
Path B -- TA availability:
- Scheduling > TA Schedules -- view all TA availability slots
- Edit availability directly in the schedule grid
WF6: TA Onboarding (per-semester)
Current state: 6-8 screens, 20-35 clicks, 1 external tool (Google Sheets) Enhanced A: 2-3 screens, 8-12 clicks, 0 external tools
Screen sequence:
- Teacher Management > Teaching Assistants -- click "Add TA" to create new TA record
- [TA Detail Page > Profile tab] -- enter personal info, credentials, set role permissions
- [TA Detail Page > Schedule tab] -- set weekly availability slots
- [TA Detail Page > Students & Groups tab] -- assign students and/or groups to this TA
7. Open Questions (with Best-Guess Defaults)
These questions remain unanswered from stakeholder interviews and workstream analysis. Each has a documented assumption that the spec uses as a default. These assumptions should be validated before development begins but are sufficient for mockup creation.
| # | Question | Source | Assumption | Affects |
|---|---|---|---|---|
| OQ1 | How many family plans per semester? | WS2 | Assume 10-20 families (~5% of students). Build full CRUD, not just tagging. | Family Plans screen complexity |
| OQ2 | How many scholarship students and distinct levels? | WS2 | Assume 15-30 students, 3 scholarship tiers (Full, 50%, 25%). Build program management. | Scholarship management scope |
| OQ3 | How many deferment students and typical period? | WS2 | Assume 5-10 per semester, 1-semester typical deferment. Lightweight management with Stripe pause_collection. | Deferment feature depth |
| OQ4 | Is FE database or QuranFlow subscriptions table canonical? | WS2 | Assume QuranFlow subscriptions table as canonical after customer ID reconciliation. |
Billing data source queries |
| OQ5 | Content cloning: linked or independent copies? | WS1.5 | Assume independent copies (simpler, avoids cross-semester versioning complexity). | Setup Checklist clone feature |
| OQ6 | What Stripe account is used? | WS2 | Assume single Stripe account (fe-checkout). | API key configuration |
| OQ7 | Should semester-end billing use Subscription Schedules? | WS2 | Assume immediate creation (simpler) with ability to backdate. | Close Workflow Step 3 design |
| OQ8 | Google Play IAP subscription volume? | WS2 | Assume <5% of students. Show IAP status as read-only note on Payments tab, no management. | Payments tab scope |
| OQ9 | Support staff Stripe dashboard access? | Interview | Assume support staff do NOT have Stripe access. All billing info must be in admin backend. | Role-based access design |
8. Glossary
| Term | Definition |
|---|---|
| Semester | An enrollment period (typically 16-17 weeks) containing all content, student progress, and scheduling. |
| Enrollment | A record connecting a user to a semester at a specific level (table: user_link_level_tag). |
| Level | Student progression stage: Level 0 (Starter) --> Level 1 --> Level 2 --> Level 3 --> Level 4 --> Year 2. |
| TA | Teaching Assistant -- reviews student submissions, conducts 1:1 appointments. |
| EOC | End of Course -- assessment determining promotion eligibility. |
| Passing threshold | 3.5 marks minimum to pass. |
| Linked deactivation | Combined action: deactivate student account + cancel Stripe subscription in one step. |
| Setup Checklist | Semester Hub feature tracking which content/config items have been set up for a new semester. |
| Close Workflow | Semester Hub feature providing gated steps for end-of-semester tasks (Review EOC, Confirm Promotions, Bulk Payment Setup, Handle Leavers, Verify). |
| Phase prompt | Dashboard element showing current semester phase (Setup / Active / Close) with progress indicator. |
| Entity page | Rich multi-tab detail page consolidating all information about a student, semester, or TA into a single view with tabs. |
| Domain | Top-level navigation section organized around an area of responsibility (e.g., Student Management, Billing & Payments). |
| Family Plan | A billing arrangement where multiple students (family members) share a single Stripe subscription with a family discount. |
| Scholarship | A reduced-rate billing arrangement with defined tiers (Full, 50%, 25%) tracked and managed within the admin backend. |
| Deferment | A temporary pause on a student's billing, implemented via Stripe's pause_collection feature, typically lasting one semester. |
| Issue Queue | A centralized screen for tracking student-reported issues and admin-to-admin tickets, replacing informal channels (WhatsApp, email). |
| Global search | A search bar available on every screen that resolves student names, TA names, and semester labels to their respective entity pages. |
| Alert tile | A configurable dashboard component that surfaces a specific operational metric (e.g., failed payments count, pending submissions) with a click-through to the relevant screen. |
9. Document Index
| Document | Description |
|---|---|
00-spec-index.md |
This file. Hub document: purpose, scope, design foundations, master navigation tree, screen placement map, new screens inventory, workflow index, open questions, glossary. |
01-global-patterns.md |
Navigation shell, global search, role-based access, component patterns, Stripe data patterns, inline documentation. Defines the shared UI patterns used across all screens. |
02-dashboard.md |
Operational dashboard: alert tiles, phase prompts, quick actions, role variants. Specifies tile types, data sources, click-through targets, and TA/admin view differences. |
03-student-management.md |
Students list, Student Detail Page (6 tabs including Payments), Submissions, Promoted Students, Failed Sign Ups. The largest domain spec covering the core student entity. |
04-semester-management.md |
Semesters list, Semester Hub Page (4 tabs including Setup Checklist + Close Workflow), Welcome Package, Email Management, Tags, Operations. Covers the semester lifecycle from creation through close. |
05-content.md |
Video Lessons, Resources, Recordings, Tutorials, MCQ Questions, Quizzes. Light spec for relocated screens with notes on semester-filtered deep linking from the Setup Checklist. |
06-scheduling.md |
Calendar View (NEW), Live Sessions, Upcoming Appointments, TA Schedules, Holidays. Covers the unified calendar and merged holidays screen. |
07-teacher-management.md |
TA list, TA Detail Page (4 tabs including Performance), Teacher Assignment Criteria, TA Reports, Student Groups. Covers TA entity management and the newly surfaced Student Groups screen. |
08-billing-payments.md |
Payment Overview (NEW), Payments, Payment Plans, Coupons, Family Plans (NEW), Scholarships & Deferments (NEW). The billing domain spec covering all Stripe integration points. |
09-reporting.md |
Student Report, Referrals, Specific Reports, Student Composition (NEW), Logs. Covers reporting screens and the new student body analytics view. |
10-admin-system.md |
Admins, Settings (General), Notifications, Support Links, Issue Queue (NEW). Covers system administration and the new centralized issue tracking. |
10. Workflow Improvement Summary
Quantified impact of the Enhanced Candidate A redesign across all 6 core admin workflows, based on WS1.5 analysis.
| Workflow | Current | Enhanced A | Screen Reduction | Click Reduction | Ext Tools Eliminated |
|---|---|---|---|---|---|
| WF1: Semester Setup | 19+ screens, 3 ext tools | 8-10 screens, 1 ext tool | 47-58% | 56-75% | 67% |
| WF2: Student Support | 5-7 screens, 3 ext tools | 1-2 screens, 0 ext tools | 71-86% | 65-81% | 100% |
| WF3: Semester Close | 8+ screens, 3 ext tools | 4-6 screens, 0 ext tools | 38-50% | 55-64% | 100% |
| WF4: Daily Monitoring | 4-5 screens, 3 ext tools | 1-3 screens, 0 ext tools | 40-78% | 56-83% | 100% |
| WF5: Scheduling | 4-6 screens, 2 ext tools | 1-2 screens, 0 ext tools | 58-75% | 50-60% | 100% |
| WF6: TA Onboarding | 6-8 screens, 1 ext tool | 2-3 screens, 0 ext tools | 58-75% | 60-66% | 100% |
External tool reduction: 15 dependencies --> 1 (Vimeo for video URLs). Google Sheets eliminated entirely. Stripe dashboard eliminated entirely.