Multi-Tenant Membership & Learning Platform (LMS)
Platform e-learning multi-organisasi berbasis Next.js App Router dan Payload CMS, dilengkapi isolasi data multi-tenant, kurikulum modular, pelacakan progres belajar, dan generator sertifikat PDF otomatis.
Dashboard tenant dengan pelacakan progres belajar real-time serta fitur resume dan ulangi kursus
Gambaran & Masalah
Membangun dan men-deploy aplikasi LMS terpisah untuk setiap institusi, sekolah, atau divisi perusahaan memakan biaya infrastruktur server yang tinggi, rumit dalam pemeliharaan, serta tidak efisien saat skala bertambah. Kebutuhannya adalah menghadirkan sistem terpadu yang dapat melayani banyak organisasi (tenants) secara independen dalam satu instans aplikasi tunggal.
Tantangan teknis utama proyek ini adalah menerapkan arsitektur multi-tenant dengan pemisahan ketat pada data kursus, media, dan progres peserta per tenant, dynamic tenant routing berbasis domain atau path, kurikulum modular fleksibel (video, kuis interaktif, modul kelulusan), serta pembuatan sertifikat kelulusan PDF A4 otomatis di sisi server.
Fitur & Implementasi Teknis
- Arsitektur Multi-Tenancy & Tenant Hub: Pengguna dapat menjelajahi dan bergabung ke berbagai bidang atau organisasi melalui Tenant Hub (
/hub), dengan dynamic tenant routing (/[tenantDomain]/dashboard) yang memastikan anggota hanya mengakses katalog materi dari tenant terkait. - Isolasi Data Tingkat Dokumen: Setiap dokumen kursus, partisipasi belajar, dan aset media direlasikan dengan tenant ID. Koleksi hook Payload CMS secara otomatis memfilter query basis data MongoDB berdasarkan tenant aktif, mencegah kebocoran data lintas organisasi.
- Role-Based Access Control (RBAC): Menerapkan otentikasi berjenjang untuk Superadmin (kontrol global seluruh tenant via Payload Admin Panel), Tenant Admin (manajemen materi, kuis, dan kurikulum tenant), serta Siswa (akses belajar dan klaim sertifikat).
- Blok Kurikulum Modular & Pelacakan Progres: Kursus disusun menggunakan blok modular di CMS yang mencakup video pembelajaran, kuis pilihan ganda dengan penilaian otomatis, dan gerbang kelulusan. Sistem mencatat modul selesai secara deterministik dengan fitur Resume Course dan Replay.
- Generator Sertifikat PDF Server-Side: Mengutilisasi Playwright headless browser (Chromium) dan template EJS di sisi server Next.js untuk merender sertifikat kelulusan beresolusi cetak A4 langsung ke dokumen PDF siap unduh.
Hasil & Status Proyek
Platform berhasil diselesaikan dan diuji sebagai prototipe siap pakai pada branch fitur repositori publik, membuktikan kelayakan arsitektur multi-tenant Next.js dan Payload CMS untuk mengelola kurikulum modular, isolasi data NoSQL, dan otomasi sertifikat belajar.