Skip to content

Repository files navigation

πŸŽ“ CBT Portal - Portal Ujian & Tryout Online Modern

Aplikasi Computer-Based Test (CBT) modern berbasis web yang dibangun menggunakan Next.js (App Router) dan Tailwind CSS. Sistem ini dirancang untuk memfasilitasi administrasi ujian online yang aman, cepat, dan interaktif dengan fitur Proctoring, Certificate Builder, Group Analytics, serta Impor Peserta massal.


πŸš€ Fitur Utama & Keunggulan

πŸ” 1. Portal Autentikasi & Keamanan (Login Portal)

  • Form masuk yang modern dan aman dengan verifikasi hak akses role-based (Super Admin / Peserta).
  • Sistem notifikasi responsif dengan efek neon interaktif.

πŸ“Š 2. Dashboard Peserta & Admin

  • Portal Peserta: Halaman beranda yang menampilkan daftar ujian aktif, riwayat ujian, skor kelulusan, dan tautan unduh sertifikat.
  • Admin Panel: Pusat manajemen statistik yang menampilkan jumlah soal, kategori, sesi ujian aktif, tingkat kelulusan, grafik komparasi performa grup, dan log pelanggaran peserta.

πŸ“‚ 3. Manajemen Soal & Kategori (Question Bank)

  • Bank Soal: Mendukung pembuatan soal pilihan ganda (dengan kunci jawaban dan bobot skor) serta soal esai.
  • Kategori Soal: Pengelompokan soal berdasarkan materi atau bidang studi.

πŸ“… 4. Penjadwalan & Konfigurasi Ujian (Assessment Schedule)

  • Konfigurasi waktu pengerjaan (durasi menit), masa aktif ujian, dan nilai KKM kelulusan.
  • Mode Rilis Sertifikat: Pilihan rilis sertifikat otomatis setelah lulus KKM atau rilis manual oleh administrator.

πŸ“œ 5. Certificate Builder & Customizer

  • Administrator dapat memilih salah satu dari 3 desain sertifikat digital kelulusan:
    • Formal & Klasik (Classic): Bingkai emas-biru formal ganda yang elegan.
    • Minimalis & Bersih (Modern): Garis aksen toska modern yang bersih.
    • Kreatif & Dinamis (Creative): Gradasi warna ungu-biru yang kekinian.
  • Sertifikat digital dinamis ini dapat diunduh/dicetak langsung oleh peserta yang lulus.

πŸ‘₯ 6. Manajemen Peserta & Impor Excel

  • Modul untuk mengelola data peserta dan pembagian grup/kelas.
  • Fitur impor data peserta secara massal menggunakan file spreadsheet Excel (.xlsx).

πŸ›‘οΈ 7. Proctoring & Log Pelanggaran Layar

  • Sistem proteksi pengerjaan ujian yang memantau perpindahan tab browser atau aplikasi peserta.
  • Pelanggaran dicatat secara real-time ke server proctoring log.

πŸ“‰ 8. Analisis Performa Ujian (Group Analytics)

  • Bagan bar chart interaktif di dashboard admin yang menampilkan perbandingan rata-rata skor kelulusan antar kelas/grup peserta.

πŸ“Έ Dokumentasi & Pratinjau Tampilan

πŸ”‘ Tampilan Login Portal

Halaman masuk bagi peserta dan administrator CBT dengan validasi state-based. Tampilan Login

πŸ“ˆ Tampilan Dashboard Peserta

Beranda peserta ujian untuk melihat jadwal ujian aktif yang siap dikerjakan. Tampilan Dashboard

πŸ› οΈ Tampilan Panel Admin

Dashboard pusat kendali administrator yang menyajikan data statistik dan visualisasi data performa. Tampilan Panel Admin

πŸ—‚οΈ Tampilan Kategori Soal

Halaman manajemen untuk membuat, mengedit, dan mengelompokkan bidang materi studi. Tampilan Kategori Soal

πŸ“ Tampilan Bank Soal

Halaman penulisan soal ujian pilihan ganda dan esai beserta bobot nilai masing-masing. Tampilan Bank Soal

πŸ“… Tampilan Jadwal Ujian

Halaman pengaturan sesi ujian lengkap dengan pilihan rilis sertifikat dan kustomisasi template desain. Tampilan Jadwal Ujian

πŸ‘₯ Tampilan Peserta & Manajemen Grup

Halaman pengelolaan daftar peserta ujian beserta fitur tambah, hapus, dan impor via Excel. Tampilan Peserta

πŸ“œ Tampilan Sertifikat Digital (Desain Dinamis)

Pratinjau sertifikat digital kelulusan peserta yang dicetak berdasarkan template pilihan administrator. Tampilan Sertifikat Dinamis Tampilan Sertifikat Klasik


πŸ› οΈ Stack Teknologi

  • Frontend core: React.js 18 & Next.js 14 (App Router)
  • Styling: Tailwind CSS (untuk layouting & desain responsif)
  • State Management: Zustand
  • Icons: Lucide React
  • HTTP Client: Axios (terintegrasi dengan JWT authentication & dynamic interceptors)

βš™οΈ Cara Memulai Pengoperasian

1. Prasyarat

Pastikan Anda sudah menginstal:

  • Node.js (Versi 18 ke atas disarankan)
  • Package Manager npm, yarn, pnpm, atau bun.

2. Instalasi Dependensi

Jalankan perintah berikut di terminal repositori frontend:

npm install

3. Konfigurasi Environment (.env.local)

Buat file .env.local pada direktori root dan arahkan backend API url:

NEXT_PUBLIC_API_URL=http://localhost:8000/api/v1

4. Menjalankan Server Pengembangan

Jalankan server lokal:

npm run dev

Buka browser dan akses http://localhost:3000 untuk melihat hasilnya.

5. Build Produksi

Untuk mengompilasi dan mengoptimalkan aplikasi untuk mode produksi:

npm run build
npm run start

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages