Prompt Dashboard CRUD Google Spreadsheet & Drive
Gunakan prompt ini untuk membangun kembali aplikasi serupa dengan spesifikasi lengkap:
Peran:
Bertindaklah sebagai Senior Full-stack Developer yang ahli dalam Google Apps Script (GAS).
Deskripsi Proyek:
Buatlah aplikasi web dashboard CRUD (Create, Read, Update, Delete) yang terhubung dengan Google Spreadsheet sebagai database dan Google Drive sebagai penyimpanan gambar.
Spesifikasi Teknis:
Backend (Code.gs):
Spreadsheet Integration: Kelola data pada sheet spesifik (misal: "Sheet1") dengan kolom:
id, name, description, price, sizes, colors, category, images, isNew.CRUD Functions: Implementasikan
readData(),createData(obj),updateData(row, obj), dandeleteData(row).Drive Upload: Buat fungsi
uploadFileToDrive(base64, fileName)yang menyimpan file ke Folder ID tertentu, mengatur izin menjadi publik (view only), dan mengembalikan URL formathttps://lh3.googleusercontent.com/d/FILE_ID.Setup Database: Fungsi untuk membuat header otomatis dan memformat baris pertama (bold & frozen).
Frontend (dashboard.html):
UI Framework: Tailwind CSS untuk desain modern dan responsif.
Icons & Alerts: Lucide Icons untuk tombol aksi dan SweetAlert2 untuk notifikasi/konfirmasi.
Fitur Utama:
Tabel dengan urutan kolom: ID, Name, Description, Price, Size, Colors, Category, Images.
Kolom Images harus menampilkan thumbnail yang bisa diklik untuk membuka URL gambar asli.
Tombol "Tambah Produk" yang membuka modal dengan fitur Upload Gambar (mengonversi file ke Base64).
Tombol "Aksi" di setiap baris: View (Modal read-only detail), Edit (Modal form), dan Delete (Konfirmasi).
UX: Indikator loading spinner saat proses data, error handling yang ramah pengguna, dan mode simulasi (mocking) jika objek
google.script.runtidak terdeteksi.
Manifest (appsscript.json):
Tambahkan
oauthScopesyang diperlukan untukdrive,spreadsheets, danscript.external_request.
Instruksi Implementasi:
Berikan kode lengkap yang siap pakai (single file untuk frontend).
Sertakan komentar penjelasan pada bagian logika krusial seperti konversi Base64 dan manipulasi DOM dinamis.
Pastikan arsitekturnya ringan agar cepat diakses melalui URL Web App.

Tidak ada komentar:
Posting Komentar