104 lines
3.9 KiB
Markdown
104 lines
3.9 KiB
Markdown
# E-recruitment
|
||
|
||
Web sederhana untuk manajemen rekrutmen karyawan: data pelamar, status rekrutmen,
|
||
berkas (CV, hasil test, portofolio), dan kirim WhatsApp memakai template pesan formal —
|
||
termasuk reminder jadwal interview.
|
||
|
||
Aplikasi ini **murni HTML + CSS + JavaScript** (tanpa backend, tanpa build tool).
|
||
Cukup buka `index.html` di browser.
|
||
|
||
## Cara Pakai
|
||
|
||
1. Buka `index.html` di browser (Chrome/Edge/Firefox).
|
||
2. Klik **+ Tambah Pelamar**, isi data, simpan.
|
||
3. Klik **Reminder Pelamar** untuk mengirim reminder jadwal interview ke pelamar
|
||
(atau **Reminder Pewawancara** dari modal Detail untuk mengingatkan pewawancara).
|
||
4. Atur nama HR & perusahaan di **Pengaturan**.
|
||
5. Edit template pesan di **Template Pesan**.
|
||
6. **Export** data secara berkala sebagai cadangan (file JSON).
|
||
|
||
## Halaman
|
||
|
||
| Halaman | Fungsi |
|
||
|---|---|
|
||
| `index.html` | Daftar pelamar, ringkasan, form, detail, reminder, berkas |
|
||
| `template.html` | Kelola template pesan WhatsApp |
|
||
| `berkas.html` | Lihat semua berkas pelamar |
|
||
| `pengaturan.html` | Data perusahaan/HR, status, export/import/reset |
|
||
|
||
## Status Rekrutmen
|
||
|
||
Baru → Screening → Interview → Diterima / Ditolak / Gagal–Tidak Melanjutkan.
|
||
Status bisa diubah/ditambah di halaman Pengaturan.
|
||
|
||
## Berkas (CV / Hasil Test / Portofolio)
|
||
|
||
Dikelola di halaman **Berkas** (juga tersedia di modal **Detail** pelamar):
|
||
|
||
1. Klik **Upload** → pilih file (PDF/DOC/gambar, maks. 5 MB), atau
|
||
2. Klik **Link** → tempel URL (Google Drive, dll).
|
||
3. **Lihat** untuk membuka, **Hapus** untuk membuang.
|
||
|
||
Penyimpanan: **IndexedDB**. Jika IndexedDB diblokir (mis. dibuka via `file://`),
|
||
berkas otomatis disimpan di localStorage sebagai base64 dengan batas 2 MB per file.
|
||
|
||
## Reminder
|
||
|
||
Ada dua tombol reminder (keduanya berisi preview sebelum dikirim):
|
||
|
||
- **Reminder Pelamar** — dikirim ke nomor pelamar (tombol di tabel & modal Detail).
|
||
- **Reminder Pewawancara** — dikirim ke nomor pewawancara (tombol di modal Detail).
|
||
|
||
### Menyiapkan Reminder Pewawancara
|
||
|
||
1. Isi **Nama pewawancara** dan **No. WA pewawancara** saat menambah/mengedit pelamar.
|
||
2. Buka **Detail** pelamar → klik **Reminder Pewawancara**.
|
||
3. Pilih template jenis *Reminder Interview (Pewawancara)* → pesan berisi data
|
||
kandidat + jadwal akan terbuka di WhatsApp pewawancara.
|
||
|
||
Untuk mengubah isi pesan reminder, edit template di menu **Template Pesan**.
|
||
|
||
## Export & Import Excel
|
||
|
||
Data pelamar bisa di-export ke **.xlsx** dan di-import kembali dari **.xlsx / .xls / .csv**.
|
||
|
||
- **Export Excel** — tombol di toolbar halaman Pelamar, atau di Pengaturan.
|
||
- **Import Excel** — pilih file; baris dengan Nama & No WhatsApp valid akan ditambahkan.
|
||
Baris tidak valid dilewati dan dilaporkan.
|
||
- **Unduh Template Excel** — tombol di halaman Pengaturan untuk format kolom yang benar.
|
||
|
||
Kolom yang didukung: `Nama`, `No WhatsApp`, `Email`, `Posisi`, `Status`, `Sumber`,
|
||
`Domisili`, `Gaji Ekspektasi`, `Tanggal Melamar`, `Catatan`, `Tanggal Interview`,
|
||
`Jam Interview`, `Metode`, `Lokasi/Link`, `Pewawancara`, `No WA Pewawancara`.
|
||
Nama kolom tidak harus persis — ada alias (mis. `No HP`, `No WA`).
|
||
|
||
Catatan tanggal: format `YYYY-MM-DD` paling aman; format `dd/mm/yyyy` juga dikenali.
|
||
|
||
## Placeholder Template
|
||
|
||
`{{nama}}`, `{{posisi}}`, `{{perusahaan}}`, `{{status}}`, `{{tanggal}}`, `{{hari}}`,
|
||
`{{jam}}`, `{{metode}}`, `{{lokasi}}`, `{{pewawancara}}`, `{{hr}}`, `{{jabatan_hr}}`
|
||
|
||
## Penyimpanan Data
|
||
|
||
- Data utama: **localStorage** browser.
|
||
- Berkas upload: **IndexedDB** (maks. 5 MB per file; fallback localStorage 2 MB).
|
||
- Backup: **Export/Import JSON** (lengkap, termasuk berkas) atau **Export/Import Excel** (data pelamar saja).
|
||
|
||
> Data tersimpan di browser. Bersihkan cache berisiko menghapus data — selalu
|
||
> lakukan **Export** berkala, atau buka lewat server lokal agar konsisten.
|
||
|
||
## Menjalankan via server lokal (opsional, disarankan)
|
||
|
||
```bash
|
||
# Python
|
||
python -m http.server 8000
|
||
|
||
# Node
|
||
npx serve .
|
||
```
|
||
|
||
Lalu buka `http://localhost:8000`.
|
||
|
||
Dokumen spesifikasi lengkap ada di `agen.md`.
|