HackGrowth — Full-Stack LMS Source Code (NestJS + React) adalah project untuk membangun platform belajar online dengan flow dari katalog kursus, pembayaran, sampai akses materi. Struktur kodenya modular (folder-by-feature); komponen dipisah (DTO, types, repository, service, controller) sehingga mudah dipelajari, diubah, dan di-scale untuk edtech, kebutuhan internal, atau proyek klien.
Di backend, NestJS berjalan dengan Prisma + PostgreSQL, JWT auth, role & permission, Zod validation, response interceptor, dan Global Prisma Module. Ada Redis untuk cache dan antrian via BullMQ (dipakai untuk verifikasi email dan job transaksi). Email menggunakan Nodemailer + Handlebars (HBS), upload avatar/profil memakai Multer, dan seluruh endpoint dibungkus BaseResponse agar format respons konsisten.
Domain LMS disusun lengkap dan terukur: Topics, Subjects, Courses, lalu struktur belajar Sections & Lessons, enrollment siswa, serta progress tracking (“My Courses” dengan persentase progres). Setelah menyelesaikan pembelajaran, student akan otomatis mendapatkan sertifikat digital sebagai bukti penyelesaian course. API publik untuk katalog mendukung pagination dan counting, dengan Redis caching untuk daftar Topic/Subject. Disediakan juga contoh unit test (Jest) untuk modul Topics & Subjects.
Alur pembayaran terintegrasi Midtrans Snap JS end-to-end: checkout → webhook callback → update status → auto-enroll saat sukses. Ada expiry job (BullMQ) untuk pembayaran yang kedaluwarsa. Pengguna dapat melihat daftar & detail transaksi. Dashboard Mentor menampilkan statistik (revenue, students, courses, lessons, withdrawals) dan latest transactions/courses; Dashboard Manager memuat statistik global dan latest users/courses/transactions. Modul withdrawal mendukung proses request dan approve.
Untuk operasional, tersedia Docker Compose (PostgreSQL, Redis) agar setup lokal cepat atau juga bisa langsung jalan lewat docker karena project sudah siap build dalam docker juga; CORS sudah aktif; ada rate limiter (Throttler) untuk mencegah spamming; serta contoh skrip stress test pakai K6 untuk uji beban awal. Di sisi frontend, kamu mendapat source code React yang sudah terhubung ke backend dan memakai TanStack Query serta React Router—siap kamu kembangkan dari sisi UI/UX.