Proses Pembuatan Fitur CRUD di Web dengan Next.js dan Supabase

Pendahuluan

CRUD (Create, Read, Update, Delete) adalah empat operasi dasar yang hampir selalu ada dalam aplikasi web dinamis. Mulai dari sistem blog, aplikasi to-do list, hingga marketplace, semuanya membutuhkan kemampuan untuk menyimpan, menampilkan, mengubah, dan menghapus data.

Dalam pengembangan modern, Next.js menjadi pilihan populer karena performa tinggi, dukungan untuk server-side rendering (SSR), dan kemudahan integrasi dengan berbagai backend. Sementara itu, Supabase hadir sebagai backend-as-a-service yang menyediakan database PostgreSQL, autentikasi, storage, dan fitur realtime yang memudahkan developer.

Menggabungkan Next.js dan Supabase memungkinkan kita membangun aplikasi CRUD dengan cepat, aman, dan skalabel tanpa perlu menulis backend manual dari nol. Artikel ini akan membahas langkah praktis dalam membuat fitur CRUD sederhana menggunakan kedua teknologi ini.

Implementasi Fitur CRUD

Berikut ini penjelasan dan contoh implementasi dari penggunaan fitur CRUD pada Next.js + Supabase.

Contoh Studi Kasus

Kita akan membuat tabel database di SQL Editor di Supabase, kamu bisa jalankan query SQL. Contohnya kita akan membuat tabel Siswa di Supabase dengan kolom:

  • id โ†’ (UUID, primary key).

  • nama โ†’ nama siswa (text).

  • kelas โ†’ kelas siswa (text).

  • umur โ†’ umur siswa (int).

  • created_at โ†’ waktu data dibuat.

Berikut ini bentuk kode:

STUDI-KASUS-CRUD-300x128 Proses Pembuatan Fitur CRUD di Web dengan Next.js dan Supabase

Berikut implementasi tiap operasi CRUD:

1. Create (Tambah Siswa)

CREATE-CRUD-300x129 Proses Pembuatan Fitur CRUD di Web dengan Next.js dan Supabase

Penjelasan Singkat :

  • export โ†’ Supaya fungsi bisa dipakai di file lain.
  • async โ†’ Fungsi berjalan asynchronous (butuh await).
  • Parameter โ†’ nama, kelas, umur.
  • supabase โ†’ Objek koneksi ke database Supabase.
  • await โ†’ Tunggu hasil query selesai.
  • { data, error } โ†’ Supabase selalu return object { data, error }.
  • .from(‘siswa’) โ†’ Pilih tabel siswa.
  • .insert(…) โ†’ Tambah data baru ke tabel siswa.
  • { nama, kelas, umur } โ†’ object data siswa yang baru.
  • [ … ] โ†’ karena Supabase butuh array object.
  • if (eror) console.eror() โ†’ Jika error, tampilkan pesan di console.
  • return data; โ†’ Return data hasil insert/tambah.

2. Read (Tampilkan Daftar Siswa)

READ-CRUD-300x135 Proses Pembuatan Fitur CRUD di Web dengan Next.js dan Supabase

Penjelasan Singkat :

  • getSiswa() โ†’ ambil semua data.
  • .select(‘*’) โ†’ Ambil semua yang ada didalam kolom.
  • .order(‘created_at’, { ascending: false }) โ†’ Urutkan data dari yang terbaru (descending).
  • if (eror) console.eror() โ†’ Jika error, tampilkan pesan di console.
  • return data; โ†’ Return semua data siswa.

3. Update (Ubah Data Siswa)

UPDATE-CRUD-300x152 Proses Pembuatan Fitur CRUD di Web dengan Next.js dan Supabase

Penjelasan Singkat :

  • .update(newData) โ†’ Update data sesuai objek newData.
  • .eq(‘id’, id) โ†’ Hanya update baris dengan id tertentu.
  • if (eror) console.eror() โ†’ย Jika error, tampilkan pesan di console.
  • return data; โ†’ Kembalikan data hasil dari update.

4. Delete (Hapus Siswa)

DELETE-CRUD-300x155 Proses Pembuatan Fitur CRUD di Web dengan Next.js dan Supabase

Penjelasan Singkat :

  • deleteSiswa(id) โ†’ siswa yang mau dihapus.
  • .delete() โ†’ Hapus data dari tabel.
  • .eq(‘id’, id) โ†’ Hanya hapus baris dengan id sesuai.
  • if (eror) console.eror() โ†’ย Jika error, tampilkan pesan di console.
  • return data; โ†’ Kembalikan data hasil dari update.

Penutup

Dengan memanfaatkan Next.js sebagai frontend dan Supabase sebagai backend, proses pembuatan aplikasi CRUD menjadi jauh lebih cepat dan sederhana. Next.js memberikan kerangka kerja modern untuk UI dan routing, sementara Supabase menyediakan database PostgreSQL lengkap dengan API siap pakai, autentikasi, serta fitur realtime.

Solusi Digitalisasi Bisnis dari Nawatara Tech

Buat kamu yang pengen punya website tapi nggak mau ribet,ย MauWebBisnis dari Nawatara Techย siap bantu! Kami bikin website yangย profesional, cepat, dan gampang dikelola. Mulai dariย Landing Page sampai Website Sistem Otomatis, semua bisa disesuaikan dengan kebutuhan bisnis kamu.

Jadi, daripada terus-terusan terjebak di marketplace, lebih baik ambil langkah besar buat punya website sendiri. Saatnya bisnis kamuย lebih stabil, lebih untung, dan lebih siap bersaing!

Bangun website profesional yang bukan hanya cepat dan menarik, tapi juga didukung strategi digital marketing lengkap untuk meningkatkan traffic dan penjualan bisnismu!

MauWebBisnisย dari NawaTara Tech menawarkan layanan Website Profesional #1, mulai dari Landing Page hingga Website Sistem Otomatis yang dirancang untuk meningkatkan visibilitas dan konversi bisnismu.

image-3 Proses Pembuatan Fitur CRUD di Web dengan Next.js dan Supabase

Baca Juga: Persiapan Membangun Web Dinamis dengan Next.js dan Supabase

Berlangganan Saluran WhatsApp:ย ย WA Channel

Join Community Sekarang:ย Nawatara Community

Post Comment

You May Have Missed