LMS overview
Audience: all
Status: specced
Owns: product
Vocational training platform for artisans. Learners take courses; instructors (platform-invited) author native content and SCORM 1.2 packages; platform staff administer the tenant. LMS certificates are independent of CAP RPL/NSQ certificates. Completing a course emits lms.course.completed so CAP can later unblock GAP_TRAINING.
Start here
Section titled “Start here”Product spine
- Personas — learner, instructor, staff (multi-role)
- Lifecycle — onboard → entitle → learn → complete → certificate
- Policies — locked v1 decisions
- PRD & screens — UX inventory
- API overview · REST (Scalar)
- Data model
Related platforms
- Auth / address / storage / payment processing → Orchestrator
- Gap recommendations (gRPC CAP → LMS) → CAP recommendations
- Payment split → Payment architecture
What LMS owns vs Orchestrator / CAP
Section titled “What LMS owns vs Orchestrator / CAP”| Concern | Owner |
|---|---|
JWT, invites email, Address lists, storage assetId, payment processing |
Orchestrator |
| Course catalogue, authoring, entitlements, progress, native assessments, LMS certificates, course pricing | LMS |
| Competency assessment, GAP_TRAINING workflow | CAP (calls LMS gRPC; consumes lms.course.completed) |
v1 in one paragraph
Section titled “v1 in one paragraph”A learner onboards (name, gender, country/state/LGA, …), browses published courses, and consumes content only with an active entitlement (self_pay, admin_grant, cap_recommendation, or sponsor). Instructors publish their own courses (co-instructors edit; owner + staff publish). SCORM zips are stored via OL assetId; the player is LMS-hosted. Completion policy → LMS certificate + events.
Maturity: Specced — see Maturity. Topology: System architecture.