Dokumentasi Sistem LMS

Platform Manajemen Pembelajaran
MAN 2 Kota Makassar

Sistem informasi akademik terpadu yang mengelola seluruh proses pembelajaran, administrasi, dan komunikasi sekolah dalam satu platform terintegrasi.

45+ Modul10 Role PenggunaRealtime Socket.IOAI-PoweredPWA Ready

Stack Teknologi

Infrastruktur modern yang dibangun untuk performa, skalabilitas, dan keandalan tinggi.

Backend FrameworkNestJS (Node.js) + Fastify
DatabasePostgreSQL + Prisma ORM
Cache & QueueRedis + BullMQ
Object StorageMinIO (S3-compatible)
RealtimeSocket.IO + Redis Adapter
AutentikasiPassport JWT + Local Strategy
Frontend FrameworkNext.js App Router
UI LibraryReact + HeroUI + Tailwind CSS
State ManagementZustand + TanStack Query
Form ValidationReact Hook Form + Zod
File ProcessingSharp + ExcelJS + Puppeteer
Payment GatewayMidtrans (VA, E-wallet, Kartu Kredit)
ContainerizationDocker multi-stage build
DeploymentCoolify (Self-hosted PaaS), Singapore
AI ProvidersGemini, OpenAI, Qwen, DeepSeek, OpenRouter
TimezoneWITA (UTC+8) / Asia/Makassar

Tiga Fitur Unggulan

Inovasi teknologi yang membedakan platform ini dari sistem manajemen pembelajaran konvensional.

RAG-AI Assistant

Generate RPP, materi, dan tugas secara otomatis menggunakan AI dengan konteks kurikulum sekolah.

GeminiQwenDeepSeek

Absensi Realtime

Tiga mode absensi — QR Luring berbasis GPS, QR WFH, dan manual — dengan pembaruan status secara langsung.

Socket.IORedisGPS

Worksheet Interaktif

Builder visual untuk membuat lembar kerja digital dengan 8 tipe widget, auto-grading, dan penilaian manual.

8 WidgetAuto-gradeVisual Builder

RAG-AI Assistant — RPP, Materi & Tugas

Sistem generasi konten berbasis AI yang menggunakan konteks kurikulum dan dokumen pengajaran sekolah untuk menghasilkan konten yang relevan dan terstruktur.

Antarmuka AI Generator — Pilih jenis konten dan parameter generate
Proses generate AI — Animasi step-by-step progress
Hasil generate AI — Editor draft RPP siap diedit dan disimpan

Konten yang Dapat Digenerate

  • RPP (Rencana Pelaksanaan Pembelajaran) — Lengkap dengan tujuan, kegiatan, dan penilaian
  • Materi Pelajaran — Konten teks terstruktur sesuai KD dan indikator
  • Tugas & Soal — Berbagai bentuk soal (pilihan ganda, esai, isian)

Provider AI yang Didukung

  • Google Gemini — Context 1M token, baca PDF native
  • OpenAI GPT — GPT-5.4 nano/mini, baca PDF native
  • Alibaba Qwen — qwen3.5-plus, murah & cocok Bahasa Indonesia
  • DeepSeek — deepseek-v4-flash, sangat murah & berkualitas
  • OpenRouter — Akses 200+ model via satu endpoint

Alur Penggunaan RAG-AI

1

Pilih Jenis Konten

Guru memilih antara RPP, Materi Pelajaran, atau Tugas yang ingin digenerate.

2

Tentukan Konteks

Sistem mengambil konteks dari kurikulum, mata pelajaran, tingkat kelas, dan semester yang aktif.

3

Tambahkan Instruksi

Guru dapat menambahkan prompt tambahan untuk menyesuaikan output sesuai kebutuhan spesifik.

4

Proses Asinkron

Job dikirim ke BullMQ queue. Respons awal diterima dalam kurang dari 2 detik, proses berjalan di background.

5

Review Draft

Hasil generate tersimpan sebagai Draft AI dengan status PENDING → PROCESSING → COMPLETED.

6

Simpan atau Edit

Guru mereview, mengedit jika perlu, lalu menyimpan langsung ke RPP, Materi, atau Tugas.

Konteks RAG yang Digunakan

  • Dokumen kurikulum yang diunggah admin
  • Silabus dan modul ajar per mata pelajaran
  • Capaian Pembelajaran (CP) dan Alur Tujuan Pembelajaran (ATP)
  • Riwayat RPP sebelumnya sebagai referensi

Manajemen Draft AI

  • Batas maksimal 3 job concurrent per guru (dapat dikonfigurasi)
  • State machine: PENDING → PROCESSING → COMPLETED → SAVED
  • Draft tersimpan minimal 7 hari sebelum dapat dihapus
  • Notifikasi otomatis saat generate selesai

Absensi Realtime Multimode

Sistem kehadiran berbasis sesi dengan tiga mode operasi, pembaruan status langsung via Socket.IO, dan validasi GPS untuk memastikan kehadiran fisik.

Tampilan QR Code sesi absensi — Guru membuka sesi, siswa scan QR untuk hadir

QR Luring (GPS)

Siswa scan QR Code yang ditampilkan guru. Sistem memvalidasi koordinat GPS siswa dalam radius yang ditentukan.

GPS ValidationRadius Check

QR WFH

Mode pembelajaran jarak jauh. Siswa scan QR tanpa validasi GPS, cocok untuk kelas daring atau hybrid.

Remote LearningNo GPS

Manual

Guru menginput kehadiran secara manual per siswa atau bulk sekaligus. Tersedia override status untuk koreksi.

Bulk EntryOverride

Alur Absensi QR Luring

1

Guru Membuka Sesi

Guru memilih jadwal pelajaran hari ini, menentukan durasi, mode, dan radius GPS.

2

Token Sesi Dibuat

Sistem membuat token unik dan menyimpan data sesi di Redis dengan TTL sesuai durasi.

3

QR Code Ditampilkan

QR Code berisi token sesi ditampilkan di layar guru. Siswa scan menggunakan aplikasi.

4

Validasi GPS

Sistem memverifikasi koordinat GPS siswa terhadap koordinat guru dalam radius yang ditentukan.

5

Update Realtime

Status kehadiran diperbarui langsung via Socket.IO. Guru melihat daftar hadir bertambah secara live.

6

Sesi Ditutup & Disimpan

Setelah sesi berakhir, data absensi disimpan permanen ke database dan tersedia untuk laporan.

Fitur Manajemen Sesi

  • Perpanjang durasi sesi yang sedang berjalan
  • Override status kehadiran individual
  • Bulk override untuk seluruh kelas
  • Satu jadwal hanya bisa memiliki satu sesi aktif per hari
  • Notifikasi otomatis ke orang tua saat siswa tidak hadir

Laporan & Export

  • Rekap kehadiran per siswa, per mata pelajaran, per periode
  • Export PDF format matriks (siswa x tanggal)
  • Statistik persentase kehadiran
  • Filter berdasarkan kelas, semester, dan rentang tanggal
  • Integrasi dengan laporan akademik semester

Tugas Worksheet Interaktif

Builder visual berbasis halaman untuk membuat lembar kerja digital yang kaya interaksi, dengan sistem penilaian otomatis dan manual terintegrasi.

Worksheet Builder — Guru mendesain halaman worksheet dengan widget di atas gambar latar
Worksheet Player — Tampilan siswa mengerjakan worksheet interaktif
Grading View — Guru menilai jawaban esai dan gambar dari siswa

8 Tipe Widget yang Tersedia

  • Multiple Choice — Pilihan ganda, auto-graded
  • Dropdown — Pilihan dari daftar, auto-graded
  • Fill in the Blank — Isian singkat, auto-graded
  • Number Input — Input angka dengan toleransi, auto-graded
  • Matching — Pasangkan kolom, auto-graded
  • Text Input — Jawaban teks panjang, manual-graded
  • Drawing Area — Area menggambar/sketsa, manual-graded
  • File Upload — Upload dokumen/gambar

Fitur Builder & Player

  • Worksheet berbasis halaman — setiap halaman memiliki gambar latar
  • Widget diposisikan dengan koordinat persentase (responsif)
  • Auto-save draft saat siswa mengerjakan
  • Navigasi antar halaman dengan progress indicator
  • Batas ukuran jawaban 1 MB per widget (mendukung drawing JSON kompleks)
  • Validasi tipe dan ukuran sebelum submit

Alur Pembuatan dan Pengerjaan Worksheet

1

Guru Membuat Tugas

Guru membuat tugas dengan bentuk "Interactive Worksheet" dari menu Tugas.

2

Desain Halaman

Guru membuka Worksheet Builder, mengunggah gambar latar untuk setiap halaman.

3

Tambah Widget

Guru menambahkan widget (soal) di atas gambar, mengatur posisi, ukuran, dan konfigurasi jawaban benar.

4

Siswa Mengerjakan

Siswa membuka tugas, mengerjakan worksheet halaman per halaman. Draft tersimpan otomatis.

5

Submit & Auto-grade

Setelah submit, sistem langsung menghitung nilai untuk widget objektif (pilihan ganda, isian, dll).

6

Penilaian Manual

Guru menilai widget subjektif (esai, gambar) melalui antarmuka grading yang menampilkan jawaban siswa.

Sistem Penilaian Terintegrasi

  • Auto-grading untuk: Multiple Choice, Dropdown, Fill in Blank, Number Input, Matching
  • Manual grading untuk: Text Input, Drawing Area
  • Nilai akhir dihitung dari kombinasi auto dan manual grade
  • Hasil penilaian tersinkron ke modul Penilaian (nilai pengetahuan/keterampilan)
  • Guru dapat melihat distribusi jawaban seluruh kelas per widget

Halaman Publik

Akses tanpa login untuk informasi sekolah, jadwal, dan pendaftaran.

Konten Website Sekolah

  • Beranda — Hero slider, profil singkat, berita terkini, galeri foto
  • Profil Sekolah — Visi, misi, sejarah, struktur organisasi
  • Berita & Artikel — Publikasi kegiatan dan pengumuman sekolah
  • Galeri Foto — Album dokumentasi kegiatan
  • Kalender Akademik — Jadwal kegiatan dan libur sekolah

Layanan Publik

  • Jadwal Pelajaran Publik — Akses jadwal per kelas tanpa login
  • Formulir Pendaftaran Ulang — Form online untuk siswa baru
  • Verifikasi LCKH Guru — Scan QR untuk verifikasi log kinerja
  • Pengumuman — Informasi penting dari sekolah
  • Halaman Informasi — Dokumentasi fitur dan panduan sistem

Super Admin & Admin

Kendali penuh atas seluruh sistem, pengguna, data akademik, dan konfigurasi platform.

Manajemen Pengguna & Sistem

  • CRUD semua pengguna — guru, siswa, staff, orang tua
  • Assign dan update role pengguna (10 role tersedia)
  • Konfigurasi permission granular per role atau per user
  • Broadcast notifikasi massal ke role atau kelas tertentu
  • System Setting — konfigurasi AI provider, throttle, dan parameter global

Manajemen Akademik

  • Tahun Ajaran & Semester — kelola periode akademik aktif
  • Master Data — tingkat kelas, mata pelajaran, guru mapel
  • Kelas & Enrollment — kelola kelas dan penugasan siswa
  • Jadwal Pelajaran — buat jadwal mengajar (master jam, ruangan)
  • Kurikulum — upload dokumen CP, ATP, silabus untuk konteks RAG-AI

Keuangan

  • Kategori Pembayaran — kelola jenis tagihan (SPP, seragam, dll)
  • Generate tagihan massal per kelas atau angkatan
  • Monitor status pembayaran dan riwayat transaksi
  • Laporan keuangan dengan export Excel/PDF
  • Konfigurasi Midtrans — VA, E-wallet, Kartu Kredit, Retail

Konten & Laporan

  • Homepage CMS — kelola slider, berita, galeri, menu navigasi
  • Pengumuman — buat dan kelola pengumuman dashboard
  • Report & EIS — Executive Information System dengan analytics
  • Pendaftaran Ulang — monitor dan verifikasi pendaftaran siswa baru
  • Activity Log — audit trail seluruh aktivitas sistem

Kepala Sekolah & Wakil Kepala

Akses monitoring dan pengawasan menyeluruh terhadap kinerja akademik dan operasional sekolah.

Monitoring Akademik

  • Dashboard EIS — ringkasan statistik akademik real-time
  • Monitor kehadiran guru dan siswa per kelas
  • Pantau progress penilaian dan pengumpulan tugas
  • Lihat laporan kinerja guru (LCKH) dan persetujuan
  • Akses rekap absensi dan catatan sikap seluruh kelas

Administrasi & Persetujuan

  • Approve dokumen pengajaran (RPP, silabus, modul ajar)
  • Monitor pendaftaran ulang dan data siswa baru
  • Akses laporan keuangan dan status tagihan
  • Kelola kalender akademik dan kegiatan sekolah
  • Broadcast pengumuman ke seluruh civitas akademika

Staff TU

Pengelolaan administrasi kesiswaan, data akademik, dan dokumen sekolah.

Administrasi Kesiswaan

  • Kelola data siswa — biodata, dokumen, status aktif
  • Proses pendaftaran ulang dan verifikasi dokumen
  • Kelola data orang tua dan wali siswa
  • Input dan update data prestasi siswa
  • Kelola data ekstrakurikuler dan anggota

Administrasi Akademik

  • Kelola data kelas dan enrollment siswa
  • Input dan update jadwal pelajaran
  • Kelola kalender akademik dan event sekolah
  • Proses perizinan siswa (sakit, izin, alfa)
  • Generate dan cetak laporan administrasi

Staff Keuangan

Pengelolaan tagihan, pembayaran, dan laporan keuangan sekolah.

Manajemen Tagihan

  • Buat kategori pembayaran (SPP, seragam, kegiatan, dll)
  • Generate tagihan massal per kelas atau angkatan
  • Monitor status tagihan — belum bayar, sebagian, lunas
  • Kirim reminder tagihan ke siswa dan orang tua
  • Proses pembayaran manual (tunai/transfer)

Laporan Keuangan

  • Dashboard ringkasan penerimaan harian, bulanan, tahunan
  • Riwayat transaksi dengan filter lengkap
  • Export laporan ke Excel dan PDF
  • Rekonsiliasi pembayaran Midtrans otomatis via webhook
  • Laporan tunggakan per siswa dan per kelas

Guru & Wali Kelas

Pusat kendali pembelajaran — dari perencanaan, penyampaian materi, penugasan, hingga penilaian dan administrasi kelas.

Manajemen Pembelajaran

  • Materi Pelajaran — Upload konten (TEXT, FILE, VIDEO, LINK) per mata pelajaran
  • Tugas — 6 bentuk: Teks, File Upload, Link, Kuis, Proyek, Interactive Worksheet
  • Diskusi — Forum tanya jawab per mata pelajaran dengan balasan berjenjang
  • Penilaian — Input nilai pengetahuan, keterampilan, dan dimensi profil Pancasila
  • AI Generator — Generate RPP, materi, dan tugas dengan bantuan AI

Administrasi Guru

  • Absensi — Buka sesi QR (luring/WFH) atau input manual, lihat rekap
  • LCKH — Log Capaian Kinerja Harian dengan QR Code verifikasi publik
  • Dokumen Pengajaran — Upload RPP, silabus, modul ajar untuk approval
  • RPP — Buat dan kelola Rencana Pelaksanaan Pembelajaran
  • Perizinan — Proses izin siswa (approve/reject)

Wali Kelas (Tambahan)

  • Monitor kehadiran dan rekap absensi seluruh siswa di kelas wali
  • Input catatan sikap positif dan negatif per siswa
  • Input dan verifikasi prestasi siswa
  • Approve atau reject perizinan siswa kelas wali
  • Akses data lengkap siswa dan orang tua di kelas wali

Dashboard Guru

  • Jadwal mengajar hari ini dengan status sesi absensi
  • Daftar tugas yang menunggu penilaian
  • Statistik pengumpulan tugas per mata pelajaran
  • Notifikasi tugas dikumpulkan dan perizinan baru
  • Quick action: buka sesi absensi langsung dari dashboard

Siswa

Akses terpadu untuk seluruh aktivitas belajar, kehadiran, keuangan, dan komunikasi dengan guru.

Pembelajaran

  • Akses materi pelajaran (teks, file, video, link) per mata pelajaran
  • Kerjakan tugas berbagai bentuk termasuk worksheet interaktif
  • Draft auto-save — pekerjaan tersimpan otomatis saat mengerjakan
  • Ikut diskusi dan tanya jawab per mata pelajaran
  • Lihat nilai, feedback, dan riwayat pengumpulan tugas

Kehadiran & Administrasi

  • Scan QR Code untuk absensi (luring dengan GPS atau WFH)
  • Lihat rekap kehadiran dan persentase per mata pelajaran
  • Ajukan perizinan (sakit, izin) dengan upload surat
  • Lihat catatan sikap dan prestasi pribadi
  • Daftar dan lihat kegiatan ekstrakurikuler

Keuangan

  • Lihat tagihan aktif dan riwayat pembayaran
  • Bayar via Midtrans — Virtual Account, E-wallet, Kartu Kredit, Retail
  • Status pembayaran diperbarui otomatis via webhook
  • Unduh bukti pembayaran

Dashboard Siswa

  • Jadwal pelajaran hari ini
  • Tugas yang belum dikerjakan dan mendekati deadline
  • Notifikasi tugas baru, nilai keluar, dan tagihan
  • Ringkasan kehadiran dan nilai terkini

Orang Tua

Pantau perkembangan akademik, kehadiran, dan keuangan anak secara transparan dan real-time.

Monitoring Anak

  • Lihat rekap kehadiran dan persentase absensi anak
  • Pantau nilai dan progress tugas per mata pelajaran
  • Lihat catatan sikap dan prestasi anak
  • Akses jadwal pelajaran anak
  • Notifikasi real-time saat anak tidak hadir

Administrasi & Keuangan

  • Lihat dan bayar tagihan sekolah anak
  • Riwayat pembayaran dan bukti transaksi
  • Ajukan perizinan atas nama anak
  • Terima notifikasi status perizinan
  • Akses informasi kontak wali kelas

Sistem Notifikasi Otomatis

Notifikasi real-time dikirim secara otomatis berdasarkan event yang terjadi di sistem, memastikan semua pihak selalu mendapat informasi terkini.

Notifikasi untuk Siswa & Orang Tua

  • Tugas baru dari guru
  • Tugas sudah dinilai — nilai dan feedback tersedia
  • Tagihan baru diterbitkan
  • Pembayaran berhasil dikonfirmasi
  • Status perizinan diperbarui (disetujui/ditolak)
  • Pengumuman baru dari sekolah

Notifikasi untuk Guru & Manajemen

  • Tugas dikumpulkan oleh siswa
  • Perizinan baru menunggu persetujuan
  • Dokumen pengajaran baru diunggah
  • LCKH menunggu approval kepala sekolah
  • Siswa tidak hadir (untuk wali kelas)
  • Pembayaran masuk (untuk staff keuangan)

Notifikasi dikirim melalui Socket.IO untuk pembaruan real-time di browser, dan disimpan di database untuk riwayat. Sistem mendukung device token untuk push notification mobile.

Laporan & Analitik

Sistem pelaporan komprehensif dengan export multi-format untuk mendukung pengambilan keputusan berbasis data.

Laporan Akademik

  • Rekap nilai per siswa, per kelas, per mata pelajaran
  • Statistik pengumpulan dan penilaian tugas
  • Laporan absensi — matriks kehadiran per periode
  • Rekap catatan sikap dan dimensi profil Pancasila
  • Laporan prestasi siswa

Laporan Operasional

  • EIS (Executive Information System) — dashboard ringkasan eksekutif
  • Laporan keuangan — penerimaan, tunggakan, rekonsiliasi
  • Laporan kinerja guru (LCKH) per periode
  • Statistik penggunaan fitur AI Generator
  • Export ke PDF, Excel, dan format cetak

Keamanan & Akses

Arsitektur keamanan berlapis dengan kontrol akses granular dan perlindungan data yang ketat.

Autentikasi & Otorisasi

  • Login dengan email/username + password
  • JWT (JSON Web Token) dengan refresh token rotation
  • Role-Based Access Control (RBAC) — 10 role pengguna
  • Permission granular per modul dan aksi
  • Override permission per user untuk kasus khusus
  • Rate limiting (throttle) untuk mencegah brute force

Keamanan Data & File

  • Public Bucket — foto profil, logo (akses URL langsung)
  • Private Bucket — dokumen, materi, tugas (presigned URL dengan TTL)
  • Validasi tipe file dan ukuran maksimal setiap upload
  • Kompresi gambar otomatis dengan Sharp
  • Semua komunikasi melalui HTTPS
  • Audit trail aktivitas pengguna via Activity Log