LMS Multi-Role Learning Management System

LMS System Platform Documentation

Live Platform: lms.zeviqai.co.uk


Overview

An enterprise-grade Learning Management System supporting CPD and Qualification/RQF courses with full student lifecycle management, from onboarding to automated certification.

Core Capabilities:


Live Access

Item Value
URL https://lms.zeviqai.co.uk
API Base /api (Express on port 5000)
Demo Access Fill Name + Email + Phone → unlock all demo roles

User Roles (15 Total)

Role ID Key Function
Admin 1 All modules, users, courses management
Assessor 2 Grading, submissions, CPD/qual management
Manager 3 Staff + student progress across courses
Student 4 Courses, assignments, payments, profile
Moderator 5 Forum moderation
Operation Manager 6 Tickets, courses, team, consultations
Accounts Manager 7 Payments, installments, finance tickets
Administrative Manager 8 Tickets, team, payments
Admission Manager 9 Tickets, team, student intake
Team Member 10 Tickets, courses (limited)
Certificate Manager 11 Claims, templates, generated certs
Claim Manager 12 Unit pass tracking, claim queue
Manager Student 13 Student dashboard variant
Institute Student 14 Student dashboard variant
Consultation Manager 15 Slots, bookings, Zoom, messaging

Admin Dashboard

Route: /dashboard/admin

Key capabilities (truncated for public view):


Course Types

Qualification (RQF)

CPD


Assignment & Grading System

Item Detail
Submission Types Assignment (file), Presentation (file), Quiz
Grading Types Pass/fail · Score-based (configurable threshold)
Timing on-time / late tracked per submission

Communication Systems

System Details
Real-time Chat Socket.IO · file attachments · online presence
Forum Posts, comments, moderator role
Tickets Department-routed: Academic, Finance, Support
Consultations Slot booking · Zoom · approval workflow
Department Messaging Staff → student messaging

Onboarding Flow

Step Page Description
1 Welcome Introduction
2 Course Selection CPD-only vs qualification path
3 Qualification Level Level 2–5 (qual students)
4 Documents Identity, address, CV, qualification uploads
5 VARK Assessment Learning style quiz
6 Initial Assessment Motivation, goals, agreements
7 Verification Pending Admin review
8 Resubmit Rejected document re-upload

Payment System


Certificate System


Demo Access System

Visitor fills Name + Email + Phone → lead saved automatically →
6 demo role buttons unlocked instantly → 2-hour sessions.

Demo Role Access
👑 Admin Full system
✏️ Assessor Grade assignments
🎓 Student Courses & progress
💰 Accounts Manager Payments & finance
📋 Admission Manager Student admissions
💬 Consultation Manager Consultations

Security

Layer Summary
Authentication JWT-based with short-lived tokens + refresh
Logout Active tokens immediately invalidated
Document Security Signed/authenticated asset access, no raw public URLs
Access Control Role-based protection on all dashboards and endpoints
File Access Owner and staff checks on all file operations

Technical Stack

Layer Technology
Frontend Next.js (App Router) · React · TypeScript · Tailwind CSS
Backend Node.js / Express 5 · PM2 cluster
Database MySQL
File Storage Cloudinary (authenticated docs)
Real-time Socket.IO + Redis adapter
Email Nodemailer · SMTP · template system
Payments Stripe (checkout + webhooks)
Other Redis · Cloudflare R2 · Zoom API · Bull queue

API Endpoints Summary (public-safe)

Group Key Routes
Auth POST /api/login · /refresh · /logout · /demo
Student /api/student/* · /api/student/profile/*
Onboarding /api/onboarding/* · /api/documents/*
Files /api/files/signed-url · /api/files/stream
Courses /api/cpd/* · /api/qualification/* · /api/courses
Payments /api/payment-installments/* · /api/webhook
Communication /api/chat/* · /api/tickets/* · /api/forum/*
Consultations /api/consultations/* · /api/consultation-manager/*
Certificates /api/certificates/* · /api/claim-manager/*
Leads POST /api/leads · GET /api/leads
System /api/settings/* · /api/ai/*

Documentation generated from live codebase LMS System

Tech: Next.js, Node.js, Express, MySQL, Redis, Socket.IO, Stripe, Cloudinary, Zoom API, Tailwind CSS, TypeScript, PM2, Nginx