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)

Incorporated from Candidate B (dashboard depth)

Incorporated from Candidate C (search + content integration)

Evidence base


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:


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:

  1. Dashboard -- phase prompt shows "Semester Setup" with progress bar
  2. Semester Management > Semesters -- create new semester or clone from previous
  3. Semester Hub > Setup Checklist tab -- guided checklist of all setup tasks with completion status
  4. Content > Video Lessons -- deep link from checklist, semester pre-filtered. Upload/assign video lessons.
  5. Click "return to checklist" affordance --> Semester Hub > Setup Checklist tab
  6. Content > Resources -- deep link from checklist, semester pre-filtered. Upload supplementary materials.
  7. Click "return to checklist" --> Semester Hub > Setup Checklist tab
  8. Semester Hub > Enrollment tab -- review enrollment numbers, assign students to levels
  9. Teacher Management > Teaching Assistants -- assign TAs to groups/levels for this semester
  10. Semester Management > Welcome Package -- configure welcome email content
  11. 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:

  1. Global Search -- type student name from any screen
  2. Student Management > Students > [Student Detail Page] -- land directly on the student's profile
  3. 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:

  1. Semester Management > Semesters > [Semester Hub > Close Workflow tab] -- gated multi-step process
  2. Step 1: Review EOC -- view end-of-course assessment results, identify students above/below 3.5 threshold
  3. Step 2: Confirm Promotions -- approve promotion list, handle edge cases (manual overrides with reason)
  4. Step 3: Bulk Payment Setup -- gated behind Step 2 completion. Create/update Stripe subscriptions for promoted students. Handle plan changes for level transitions.
  5. Step 4: Handle Leavers -- linked deactivation: deactivate student account + cancel Stripe subscription in one action. Record leave reason.
  6. 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:

  1. Dashboard -- alert tile shows "3 Failed Payments"
  2. Click tile --> Billing & Payments > Payment Overview -- filtered to failed payments
  3. Click student name --> Student Management > Students > [Student Detail Page > Payments tab] -- see full payment history, retry or contact

Path B -- TA performance:

  1. Dashboard -- alert tile shows "2 TAs: Response Time > 48h"
  2. Click tile --> Teacher Management > Teaching Assistants -- filtered to flagged TAs
  3. 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:

  1. Scheduling > Calendar View -- unified view of live sessions and 1:1 appointments
  2. Filter by TA, gender, or level
  3. Click to create or edit a session/appointment directly on the calendar

Path B -- TA availability:

  1. Scheduling > TA Schedules -- view all TA availability slots
  2. 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:

  1. Teacher Management > Teaching Assistants -- click "Add TA" to create new TA record
  2. [TA Detail Page > Profile tab] -- enter personal info, credentials, set role permissions
  3. [TA Detail Page > Schedule tab] -- set weekly availability slots
  4. [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.