Web Applications / Project 07
Kawani HRIS
Employee operations, Philippine payroll and approvals across legal entities.

01 / Overview
Behind the interface.
A multi-entity Philippine HRIS sized for roughly 8,400 employees across four legal entities, built as a pnpm workspaces monorepo: a React 18 and TypeScript front end, an Express 5 and TypeScript API, and shared Zod schemas acting as the single source of truth for every payload both sides exchange.
02 / Implementation
What makes it work.
Twenty one module screens plus a six tab employee profile, payroll run detail, government agency tabs and a permission filtered command palette.
Philippine statutory engine for SSS, PhilHealth, Pag-IBIG, BIR TRAIN withholding and 13th month pay, unit tested against the reference payslip figures.
Role-based access enforced server side at field level (salary stripped, government IDs masked behind an audited reveal) and at row level (a manager sees only their reporting subtree).
Payroll approval chain of finance, then HR, then CFO, with variance acknowledgement, segregation of duties, and the bank disbursement file gated until all three approvals land.
Amounts cross the API as integer centavos, sensitive reads and every mutation append to an audit trail, and the UI stays usable down to 375px with light and dark themes.