Admin Portal
Last updated on 2026-09-13
The admin portal has 12 routes for managing the entire LMS platform. Admins have full access to all data.
Dashboard (/admin/dashboard)
- Platform-wide KPI stats (total users, courses, enrollments, revenue)
- User growth chart
- Enrollment trends
- Revenue overview
Data from getAdminDashboardStats().
User Management (/admin/users)
- All users with role, status, and join date
- Change user roles (student → instructor → admin)
- Suspend or reactivate accounts
- Search and filter users
Course Management (/admin/courses)
- All courses across all instructors
- Status management (draft, published, archived)
- Course details and statistics
Categories (/admin/categories)
- Manage course categories
- Add, edit, delete categories
- View course counts per category
Course Approvals (/admin/approvals)
- Pending course submissions from instructors
- Review and approve/reject with feedback
- Approval history
Data from getApprovals(), mutations via reviewCourse().
Coupons (/admin/coupons)
- Discount code management
- Create coupons with percentage or fixed discounts
- Set usage limits and expiry dates
- Track usage counts
- Restrict to specific courses
CRUD via getCoupons(), createCoupon(), updateCoupon(), deleteCoupon().
Revenue (/admin/revenue)
- Platform-wide revenue analytics
- Daily revenue chart
- Revenue by course
- Instructor payout tracking
Announcements (/admin/announcements)
- Platform announcements to students, instructors, or everyone
- Schedule announcements for future publishing
- Pin important announcements
CRUD via getAnnouncements(), createAnnouncement(), updateAnnouncement(), deleteAnnouncement().
Reports (/admin/reports)
- Daily metrics: new enrollments, completions, revenue, active users
- Trend charts over time
- Export capabilities
Support Tickets (/admin/tickets)
- Help desk for student issues
- Priority levels (critical, high, medium, low)
- Status tracking (open, in-progress, resolved, closed)
- Threaded messages per ticket
- Assign tickets to team members
Audit Log (/admin/audit-log)
- Chronological log of all admin actions
- User, action, entity, and timestamp
- Filter by action type and entity
- Metadata details
Settings (/admin/settings)
- Platform-wide settings via
site_settingstable - Configure platform name, description
- Email and notification settings
- Feature toggles