Panduan DCC HRIS

Arsitektur sistem

Komponen DCC HRIS, cara keduanya berbagi satu login, dan letak aturan bisnis.

Komponen

Komponen Folder Teknologi Fungsi
API api/ Go (chi, pgx, sqlc, goose) Semua aturan bisnis dan pengecekan izin. Kontraknya ada di openapi.yaml.
App staff apps/staff/ Next.js 16, Tailwind, shadcn/ui Aplikasi untuk semua karyawan, termasuk atasan dan Admin HR.
App admin apps/admin/ Next.js 16 Backoffice khusus Admin HR. Pengguna lain melihat halaman yang mengarahkan ke app staff.
Database api/db/ PostgreSQL 18 Data utama, termasuk sesi login dan antrean email (email_outbox).
Email api/internal/mailer SMTP Worker di dalam api serve mengirim email dari email_outbox. Di development dan server dev, Mailpit menangkap semua email.

Kode yang dipakai bersama oleh dua app ada di packages/: @hr/api-client (client API dari openapi.yaml), @hr/core (format tanggal, label, dan helper sesi), serta @hr/ui (komponen dan tema).

Satu login untuk dua app

App staff dan app admin memakai API dan sesi yang sama. Cookie sesi berlaku untuk domain app staff dan subdomainnya, jadi Admin HR yang sudah masuk di app staff langsung masuk juga di app admin lewat Open backoffice.

Beberapa alamat di app staff (/employees, /settings, /reports/employee-exits) dipindahkan ke app admin.

Letak aturan bisnis

Semua aturan, misalnya saldo cuti, batas pengajuan, urutan persetujuan atasan lalu HR, dan siapa boleh melihat data siapa, dicek di API. App web hanya menampilkan hasilnya. Jika ada perbedaan antara tampilan dan API, perilaku API yang berlaku.

Persetujuan cuti selalu berurutan: atasan dulu, lalu Admin HR (status PENDING_HR). Admin HR baru bisa memutuskan lebih dulu jika karyawan tidak punya atasan.

Waktu

Jam absensi memakai jam server dalam zona waktu WIB (Asia/Jakarta), bukan jam perangkat karyawan.

Rujukan teknis

  • README.md di root repo: setup lokal, perintah make, akun contoh, dan variabel email.
  • docs/dev-server.md: susunan server dev dan cara deploy.
  • docs/payroll-regulations.md: aturan payroll, BPJS, dan PPh 21.
  • .claude/skills/verify-hr/features/: peta perilaku setiap fitur dari sudut pandang pengguna.
Panduan DCC HRIS · Versi 0.1.0 (v0.1.0) · dibuat 11 November 2026