Cara Membuat Aplikasi CRUD dengan Astro?
Dalam panduan ini, Anda akan belajar cara membuat aplikasi web CRUD (buat, baca, perbarui, dan hapus) menggunakan Astro.
Tutorial ini memandu Anda melalui pengaturan proyek Back4app—backend kami yang kuat—dan merancang struktur data yang mendukung operasi dasar.
Kami kemudian akan membangun frontend Astro yang berkomunikasi dengan Back4app melalui API REST/GraphQL, memastikan manajemen data yang aman dan efisien.
Pada akhir panduan ini, Anda akan memiliki aplikasi web siap produksi lengkap dengan otentikasi pengguna dan penanganan data yang aman.
- Cara menyusun aplikasi CRUD dengan Astro dan Back4app.
- Merancang backend yang dapat diskalakan dengan koleksi kustom.
- Menggunakan antarmuka admin drag-and-drop untuk manajemen data yang mudah.
- Mengintegrasikan frontend Astro Anda dengan Back4app menggunakan REST atau GraphQL.
- Menyebarkan proyek Astro Anda dan mengkontainerisasinya dengan Docker jika diperlukan.
Sebelum Anda mulai, harap konfirmasi bahwa Anda memiliki:
- Lingkungan pengembangan Astro yang sudah disiapkan. Gunakan dokumentasi Astro resmi untuk memulai. Pastikan Node.js (versi 14+) terinstal.
- Pemahaman dasar tentang JavaScript, Astro, dan REST API. Kunjungi dokumentasi Astro jika Anda perlu penyegaran.
- Masuk ke akun Back4app Anda.
- Klik “Aplikasi Baru” dari dasbor Anda.
- Beri nama proyek Anda: Basic-CRUD-App-Astro dan ikuti instruksi untuk menyelesaikan pengaturan.

Setelah dibuat, proyek Anda akan muncul di dasbor Back4app Anda—fondasi Anda untuk konfigurasi backend.
Untuk aplikasi CRUD kami, Anda akan mendefinisikan beberapa koleksi. Di bawah ini adalah contoh koleksi dengan bidang dan tipe untuk membantu Anda mengonfigurasi skema database Anda secara efektif. Struktur ini mendukung operasi CRUD yang efisien.
Bidang | Tipe | Tujuan |
---|---|---|
_id | ObjectId | Kunci utama yang dihasilkan secara otomatis. |
judul | String | Nama atau judul item. |
deskripsi | String | Gambaran singkat tentang item tersebut. |
dibuat_pada | Tanggal | Stempel waktu pembuatan. |
diperbarui_pada | Tanggal | Timestamp untuk modifikasi terakhir. |
Bidang | Tipe | Tujuan |
---|---|---|
_id | ObjectId | Kunci utama yang dihasilkan secara otomatis. |
nama pengguna | String | Pengidentifikasi unik untuk pengguna. |
String | Alamat email pengguna. | |
hash_kata_sandi | String | Kata sandi terenkripsi untuk otentikasi. |
dibuat_pada | Tanggal | Ketika akun dibuat. |
diperbarui_pada | Tanggal | Waktu pembaruan terakhir untuk akun. |
Anda dapat mengonfigurasi koleksi ini secara manual di dasbor Back4app Anda dengan membuat kelas baru dan menambahkan kolom yang sesuai.

Untuk menambahkan sebuah field, pilih tipe data, berikan nama field, tentukan default jika diperlukan, dan tandai apakah field tersebut wajib.

Agen AI terintegrasi di Back4app dapat menghasilkan skema Anda secara otomatis. Deskripsikan koleksi dan field yang Anda inginkan di antarmuka Agen AI, tinjau rekomendasinya, dan terapkan pada proyek Anda.
Alat ini mempercepat pengaturan sambil memastikan skema Anda memenuhi persyaratan aplikasi.
Aplikasi Admin Back4app adalah alat tanpa kode yang menyediakan antarmuka visual untuk mengelola data backend Anda. Desain drag-and-drop-nya memungkinkan Anda melakukan operasi CRUD dengan mudah.
- Buka menu “Lainnya” di dasbor Back4app Anda.
- Pilih “Aplikasi Admin” dan klik “Aktifkan Aplikasi Admin.”
- Atur kredensial admin Anda dengan membuat pengguna admin awal. Ini juga akan mengonfigurasi peran default (misalnya, B4aAdminUser) dan koleksi sistem.

Setelah aktivasi, masuk ke Aplikasi Admin untuk mengelola koleksi Anda.

Di dalam Aplikasi Admin Anda dapat:
- Menambahkan Rekaman: Klik “Tambahkan Rekaman” di koleksi (seperti Item) untuk membuat entri baru.
- Melihat/Mengedit Rekaman: Klik pada sebuah rekaman untuk memeriksa atau memodifikasi bidangnya.
- Menghapus Rekaman: Hapus entri yang tidak lagi diperlukan dengan mudah.
Alat ini menyederhanakan operasi CRUD dengan antarmuka yang intuitif.
Dengan backend Anda yang sudah dikonfigurasi, saatnya untuk mengintegrasikan frontend Astro Anda.
Karena Astro adalah generator situs statis yang dioptimalkan untuk kinerja, kita akan berinteraksi dengan Back4app menggunakan REST atau GraphQL APIs. Pendekatan ini menghindari kebutuhan akan Parse SDK.
Berikut adalah contoh panggilan API REST dalam komponen Astro:
Integrasikan panggilan API serupa untuk membuat, memperbarui, dan menghapus catatan dalam komponen Astro Anda.
Lindungi data Anda dengan mengatur ACL pada objek. Misalnya, untuk membuat item yang hanya dapat dimodifikasi oleh pemiliknya:
Di dalam dasbor Back4app, sesuaikan CLP untuk setiap koleksi untuk mendefinisikan siapa yang dapat mengakses dan memodifikasi data Anda.
Back4app menggunakan kelas Pengguna Parse untuk otentikasi. Dalam proyek Astro Anda, buat komponen untuk pendaftaran dan masuk pengguna dengan memanfaatkan panggilan REST API.
Anda dapat membangun komponen serupa untuk masuk pengguna dan manajemen sesi.
Fitur Web Deployment Back4app memungkinkan Anda untuk menghosting proyek Astro Anda dengan mulus dengan menghubungkan repositori GitHub Anda.
- Buka terminal di direktori proyek Anda.
Jalankan perintah build:
- Periksa Build: Pastikan bahwa folder dist berisi sebuah index.html bersama dengan direktori aset lainnya.
Repositori Anda harus mencakup kode sumber Astro yang lengkap. Struktur contoh mungkin adalah:
Inisialisasi repositori Git (jika belum dilakukan):
Tambahkan semua file:
Komit perubahan Anda:
Buat repositori di GitHub (misalnya, Basic-CRUD-App-Astro) dan dorong:
- Akses Web Deployment: Masuk ke dasbor Back4app Anda, navigasikan ke proyek Anda (Basic-CRUD-App-Astro), dan pilih opsi Web Deployment.
- Hubungkan Akun GitHub Anda: Ikuti petunjuk untuk mengizinkan Back4app mengakses repositori Anda.
- Pilih Repositori dan Cabang Anda: Pilih repositori (misalnya, Basic-CRUD-App-Astro) dan cabang (biasanya main).
- Perintah Build: Tentukan perintah build (misalnya, npm run build) jika repositori Anda tidak memiliki output yang sudah dibangun.
- Direktori Output: Atur ke dist sehingga Back4app tahu di mana menemukan file statis Anda.
- Variabel Lingkungan: Tambahkan variabel yang diperlukan, seperti kunci API.
Jika Anda lebih suka penyebaran terkontainer, sertakan sebuah Dockerfile seperti:
Integrasikan pengaturan Docker dalam konfigurasi Penyebaran Web Anda jika diinginkan.
- Tekan tombol Deploy di bagian Penyebaran Web.
- Pantau proses pembangunan: Back4app akan mengambil kode Anda, membangunnya, dan menyebarkan aplikasi Anda.
- Terima URL Anda: Setelah disebarkan, Back4app akan menyediakan URL di mana situs Anda aktif.
Kerja bagus! Anda sekarang telah membuat aplikasi CRUD lengkap dengan Astro dan Back4app. Proyek Anda mencakup backend dengan koleksi terperinci untuk Item dan Pengguna, serta frontend yang melakukan semua operasi CRUD melalui REST/GraphQL API.
Langkah Selanjutnya:
- Tingkatkan Frontend: Tambahkan fitur seperti tampilan terperinci, kemampuan pencarian, dan notifikasi waktu nyata.
- Perluas Fungsionalitas Backend: Pertimbangkan untuk mengintegrasikan fungsi cloud atau endpoint API tambahan untuk logika yang lebih kompleks.
- Selami Lebih Dalam: Jelajahi sumber daya lebih lanjut di dokumentasi Back4app dan dokumentasi Astro untuk topik lanjutan.
Dengan mengikuti tutorial ini, Anda sekarang memiliki pengetahuan untuk membangun aplikasi CRUD yang kuat dan dapat diskalakan menggunakan Astro dan Back4app. Selamat berkoding dan menjelajahi kemungkinan baru!
