Dokumen ini berisi pemetaan dan fungsi dari skrip-skrip yang ada di dalam repository IPB Pre-Loved. [PERHATIAN AI]: WAJIB MENAMBAHKAN ENTRI BARU KE TABEL INI setiap selesai membuat atau mengubah tujuan fungsionalitas file secara besar-besaran.
| File / Folder Path | Deskripsi Fungsi |
|---|---|
README.md |
Panduan instalasi cepat (Run from Scratch) dan dokumentasi utama project |
src/db/schema.js |
Struktur rancangan tabel database D1 menggunakan Drizzle ORM |
src/lib/db.js |
Helper koneksi Drizzle + Context Helpers (getEnv, getContextDb) |
src/lib/auth.js |
Konfigurasi inti dan callback rules pembatasan domain NextAuth (SSO Google) |
src/app/api/auth/[...nextauth]/route.js |
Route handler yang mengakomodir standard fetch Edge dari library NextAuth |
src/middleware.js |
Midleware pelindung rute SSR Next.js berdasarkan Role (SELLER/ADMIN bypass rules) |
wrangler.toml |
Konfigurasi build Cloudflare Emulator, Binding Database ID, dan R2 ID |
agents.md |
Aturan konteks/batas suci mandat untuk semua AI di lingkungan project ini |
src/modules/admin/actions.js |
Server Actions khusus manajemen user dan inisialisasi DB |
src/modules/product/actions.js |
Server Actions untuk CRUD produk (dengan security owner logic) |
src/modules/category/actions.js |
Server Actions untuk manajemen kategori barang |
src/modules/wishlist/actions.js |
Server Actions untuk manajemen produk favorit (Wishlist) pembeli |
src/modules/catalog/services.js |
Business logic/Services untuk query data katalog publik (Approved, Featured, & Detail) |
docs/backend_docs.md |
Panduan teknis Backend & Integrasi Agent (Role-Based) |
jsconfig.json |
Konfigurasi path aliasing @/* untuk memudahkan import modul |
tailwind.config.js |
Konfigurasi framework CSS Tailwind untuk styling aplikasi |
src/app/globals.css |
File CSS global yang berisi direktif Tailwind dan desain sistem dasar |
src/app/login/page.js |
Halaman Login premium dengan integrasi Google OAuth |
src/app/AuthContext.js |
Client component wrapper untuk provide session NextAuth ke seluruh aplikasi |
local-db-info/ |
Folder persitensi lokal untuk D1 Database dan R2 Storage (shared CLI & Server) |
src/app/admin-test/page.js |
Dashboard modular untuk pengujian CRUD Backend (User, Category, R2 Product) |
src/app/api/images/[...key]/route.js |
API Proxy untuk melayani file gambar dari R2 ke browser (Local & Prod) |
drizzle.config.js |
Konfigurasi Drizzle Kit untuk jalankan Drizzle Studio (Lokal & Remote) |
src/app/api/upload/route.js |
API Route untuk upload file besar ke R2 dengan progress bar support |
src/lib/upload.js |
Utility frontend untuk upload file via API dengan tracking progres (%) |
src/lib/video.js |
Utility frontend untuk kompresi video 1080p 30fps H.264 (FFmpeg) |
src/lib/image.js |
Utility frontend untuk kompresi gambar ke 12MP WebP |
src/modules/auth/actions.js |
Server Actions untuk manajemen pendaftaran dan proses onboarding role |
src/modules/user/actions.js |
Server Actions untuk manajemen profil user (Seller/Buyer Settings & Upgrade Role) |
src/modules/wishlist/actions.js |
Server Actions untuk manajemen produk favorit (Wishlist) pembeli |
src/modules/notification/actions.js |
Server Actions untuk mengambil dan menandai notifikasi (Approve/Reject) |