NextJS Templates

Tutorial Aplikasi Pemesanan Ruang Pertemuan dengan Back4App, Next.js dan Vercel

23min

Dalam tutorial ini, Anda akan membangun Bookit, sebuah sistem pemesanan ruang rapat menggunakan Next.js sebagai kerangka frontend dan Back4App sebagai layanan backend. Anda akan menerapkan otentikasi pengguna, manajemen ruang, dan fungsionalitas pemesanan, serta menerapkan aplikasi di Vercel.

1. Prasyarat

Untuk menyelesaikan tutorial ini, Anda akan membutuhkan:

2. Menyiapkan Back4App

  1. Masuk ke akun Back4App Anda dan navigasikan ke dasbor proyek Anda.
  2. Di sidebar kiri, klik Database untuk mengakses Data Browser.
  3. Anda perlu membuat kelas berikut untuk memodelkan data:

2.1. Buat Kelas User

Secara default, Parse menangani otentikasi pengguna, jadi tidak perlu membuat kelas ini secara manual. Parse secara otomatis mengelola bidang berikut untuk Anda:

  • email: Alamat email untuk login
  • password: Kata sandi (hashed)
  • username: Nama pengguna opsional

2.2. Buat Room Kelas

  1. Di Data Browser, klik Buat Kelas, pilih Kustom, dan beri nama kelas Ruang.
  2. Tambahkan kolom berikut:

Nama Kolom

Tipe

Deskripsi

nama

String

Nama ruangan

deskripsi

String

Deskripsi ruangan

kapasitas

Nomor

Jumlah orang yang dapat ditampung ruangan

fasilitas

Array

Daftar fasilitas (TV, WiFi, dll.)

harga

Nomor

Harga per jam

gambar

Berkas

URL Gambar

pemilik

Penunjuk

Menunjukkan ke Pengguna kelas

2.3. Buat Booking Kelas

  1. Buat kelas kustom lain bernama Booking.
  2. Tambahkan kolom berikut:

Nama Kolom

Tipe

Deskripsi

ruang

Penunjuk

Menunjuk ke Kelas Ruang

pengguna

Penunjuk

Menunjuk ke Kelas Pengguna

checkIn

Tanggal

Tanggal/waktu mulai pemesanan

checkOut

Tanggal

Tanggal/waktu akhir pemesanan

3. Menyiapkan Next.js dan Parse SDK

  1. Buat proyek Next.js baru:
Bash

  1. Instal Parse JS SDK:
Bash

  1. Di dalam pages/_app.js file, inisialisasi Parse dengan kredensial Back4App Anda:
JS


Ganti 'YOUR_APP_ID' dan 'YOUR_JAVASCRIPT_KEY' dengan kredensial aplikasi Back4App Anda.

4. Mengimplementasikan Autentikasi Pengguna

4.1. Pendaftaran Pengguna

Buat halaman baru pages/signup.js dengan formulir pendaftaran:

JS


4.2. Masuk Pengguna

Buat pages/login.js untuk masuk pengguna:

JS


4.3. Rute yang Dilindungi

Untuk rute yang dilindungi, Anda dapat menggunakan rute API Next.js dan memeriksa apakah pengguna terautentikasi:

JS


5. Manajemen Ruangan

5.1. Menampilkan Ruangan yang Tersedia

Buat pages/index.js untuk mencantumkan ruangan yang tersedia:

JS


5.2. Menambahkan Ruangan

Buat pages/add-room.js untuk menambahkan ruangan baru (untuk pengguna yang berwenang):

JS


5.3. Detail Ruangan

Buat pages/rooms/[id].js untuk melihat informasi detail tentang sebuah ruangan:

JS


6. Sistem Pemesanan

6.1. Memesan Ruangan

Tambahkan fungsionalitas pemesanan di pages/rooms/[id].js dengan menambahkan formulir pemesanan:

JS


6.2. Melihat dan Membatalkan Pemesanan

Buat pages/my-bookings.js untuk melihat dan membatalkan pemesanan:

JS


7. Menerapkan ke Vercel

  1. Instal Vercel CLI:
Bash

  1. Terapkan aplikasi Next.js Anda dengan:
Bash


Ikuti petunjuk untuk menerapkan aplikasi Anda ke Vercel. Setelah diterapkan, aplikasi Anda akan tersedia di URL publik.

8. Kesimpulan

Dalam tutorial ini, Anda telah membangun sebuah Bookit aplikasi dengan Next.js untuk frontend dan Back4App sebagai backend. Anda telah menerapkan otentikasi pengguna, manajemen ruangan, dan fungsionalitas pemesanan. Akhirnya, Anda menerapkan aplikasi di Vercel. Anda sekarang dapat memperluas aplikasi dengan fitur tambahan seperti pencarian, integrasi pembayaran, atau notifikasi.