# Deploy WEBKU di Rumahweb

## Setup Node.js App

- Node.js version: 20.9 atau lebih baru (disarankan 22)
- Application mode: Production
- Application root: folder tempat ZIP ini diekstrak, misalnya `webku`
- Application URL: domain atau subdomain tujuan
- Application startup file: `app.cjs`

## Environment variables

Isi melalui menu Environment Variables pada Setup Node.js App. Jangan mengunggah `.env` lokal.

```env
DATABASE_URL=mysql://USER_DATABASE:PASSWORD_DATABASE@localhost:3306/NAMA_DATABASE
NEXTAUTH_SECRET=GANTI_DENGAN_RAHASIA_ACAK_MINIMAL_32_KARAKTER
NEXTAUTH_URL=https://DOMAIN-ANDA
NEXT_PUBLIC_APP_URL=https://DOMAIN-ANDA
AI_PROVIDER=gemini
AI_BASE_URL=https://generativelanguage.googleapis.com/v1beta
AI_API_KEY=API_KEY_GEMINI_ANDA
AI_MODEL=gemini-2.5-flash
```

Karakter khusus pada username atau password di `DATABASE_URL` harus diubah ke format URL-encoded.

## Perintah Terminal

Aktifkan virtual environment Node.js menggunakan perintah yang ditampilkan cPanel, masuk ke Application Root, lalu jalankan:

```bash
npm install --include=dev
npm run build
npx prisma migrate deploy
npm prune --omit=dev
```

Impor backup database melalui phpMyAdmin sebelum aplikasi dipakai. Setelah semuanya selesai, klik Restart pada Setup Node.js App.

## Data yang dipindahkan terpisah

- Database lokal diekspor sebagai file `.sql`, kemudian diimpor ke database hosting.
- Folder `public/uploads` sudah disertakan dalam ZIP ini.
- Kredensial `.env` tidak disertakan.
