How yahyasheata/mathmasteryhub1 works
Math Mastery Hub is a course-based learning platform. Learners browse courses and resources, purchase or enroll, then access lessons, homework, exams, live sessions, and progress tools; staff manage course content and student activity. The tree documents additional branches for free resources, past papers, revision and recovery plans, analytics, and parent reports. Source excerpts confirm routing, resource resolution, enrollment persistence, and notification behavior; other subsystem links are kept broad where implementation was not sampled.
Main entry points: course.php Course workspace · index.php HTTP router · config.php Application database · dashboard.php Admin workspace
Components 34
Public discovery
- Landing page
views/index.php - Course catalog
views/public/courses.php - Public resources
views/public/free-learning.php - Course checkout
views/public/checkout.php - Payment integration
inc/FawaterkPayment.php - Payment webhook
views/public/payment/webhook_json.php
Learning workspace
- Course workspace
views/user/course.php - Resource access
inc/StudentResourceGateway.php - Resource resolver
inc/CourseResourceResolver.php - Assignments
views/user/assignments.php - Exams
views/user/exams.php - Timed exams
inc/TimedExam.php - Live sessions
inc/LiveSessions.php - Past papers
inc/PastPapers.php - Revision plans
inc/RevisionPlan.php - Recovery plans
inc/RecoveryPlan.php - Learning progress
inc/StudentCourseProgress.php - Student analytics
inc/StudentAnalytics.php - Parent reports
inc/ParentWeeklyReport.php
Course administration
- Admin workspace
views/admin/dashboard.php - Course management
inc/AdminCourseService.php - Content copying
inc/CourseContentCopyService.php - Assessment management
inc/AdminAssessmentService.php - Paper management
views/admin/past-papers.php
Platform services
- HTTP router
index.php - Enrollment service
inc/EnrollmentService.php - Notifications
inc/NotificationManager.php - Push subscription
notification/main.js - Notification records
inc/NotificationManager.php - Application database
connection/config.php
Other components
- Visitor
- Learner
- Administrator
- Fawaterk
Connections 39
- Visitor → HTTP router: requests pages
- Learner → HTTP router: requests learning
- Administrator → HTTP router: requests admin
- HTTP router → Landing page: routes landing
- HTTP router → Course catalog: routes catalog
- HTTP router → Public resources: routes resources
- HTTP router → Course checkout: routes checkout
- HTTP router → Course workspace: routes workspace
- HTTP router → Admin workspace: routes admin
- Course checkout → Payment integration: creates payment
- Payment integration → Fawaterk: requests payment
- Fawaterk → Payment webhook: sends callback
- Payment webhook → Application database: verifies configuration
- Course checkout → Enrollment service: records enrollment
- Enrollment service → Application database: writes course logs
- Course workspace → Resource access: opens resource
- Resource access → Resource resolver: resolves resource
- Resource access → Application database: checks access
- Course workspace → Assignments: accesses assignments
- Course workspace → Exams: accesses exams
- Exams → Timed exams: runs timed exams
- Course workspace → Live sessions: views sessions
- Course workspace → Past papers: opens papers
- Course workspace → Revision plans: uses revision plans
- Course workspace → Recovery plans: uses recovery plans
- Course workspace → Learning progress: records progress
- Learning progress → Application database: persists progress
- Student analytics → Application database: reads activity
- Parent reports → Application database: reads learning data
- Admin workspace → Course management: manages courses
- Course management → Application database: updates course content
- Course management → Content copying: copies content
- Content copying → Application database: copies course records
- Admin workspace → Assessment management: manages assessments
- Assessment management → Application database: updates assessment data
- Admin workspace → Paper management: manages papers
- Notifications → Notification records: reads and writes
- Notifications → Application database: persists notices
- Push subscription → Notifications: saves subscription