Lewati ke konten

Deploy

  1. Import repo ke Vercel. Pilih framework Next.js. Build command bawaan (bun run build) sudah menjalankan prisma generate dan prisma db push.

  2. Di Environment Variables, isi minimal DATABASE_URL, JWT_SECRET, dan SCHOOL_TZ. Tambahkan SCHOOL_NAME, APP_URL, serta variabel Google dan SMTP kalau dipakai. Daftar lengkapnya ada di Instalasi & environment.

  3. Di MongoDB Atlas, izinkan akses jaringan dari Vercel.

  4. Deploy. Skema database dibuat otomatis oleh build.

  5. Buat data awal (admin pertama) sekali saja dari komputer lokal yang DATABASE_URL-nya mengarah ke database produksi:

    Terminal window
    bun run db:seed -- --admin-password=GANTI_INI --staff-password=GANTI_INI

Setiap build menjalankan prisma db push, jadi Anda tidak perlu menjalankannya manual setiap ada pembaruan aplikasi (misalnya saat ada field atau koleksi baru).

Kalau db push gagal, build tetap lanjut supaya deploy tidak macet, dan log build memuat tulisan:

PERINGATAN: db push gagal, skema database belum diperbarui.

Penyebab yang paling umum adalah data ganda lama yang menghalangi pembuatan unique index (mis. dua catatan untuk siswa, tanggal, dan sholat yang sama). Bersihkan data gandanya, lalu jalankan bun run db:push manual untuk melihat pesan error lengkapnya.

  • Pastikan SHOW_DEV_SEED bernilai false atau dihapus.
  • Buka aplikasi lewat https://. Kamera di halaman Scan tidak berfungsi lewat http:// (kecuali localhost).
  • Ganti password akun contoh, lalu hapus data contoh dari menu Akun.
  • Kalau memakai login Google, pastikan redirect URI memakai domain produksi. Lihat Login Google.

Aplikasi adalah Next.js biasa dan membutuhkan runtime Node.js. Di hosting selain Vercel, jalankan bun run build lalu bun run start, dan pastikan environment sudah terisi.

Designed & Developed by NoxlyDev