W3JDEV
INITIALIZING SYSTEM
0% LOADED
v3.0.0
System Online
Back to Portfolio

PunchClock

From a USD 15,000 quote to my own payroll system

A 50+ staff café was quoted USD 15,000 for a time-clock system. I built one on Google Sheets and Apps Script instead — payroll admin from ~40 hours a month to ~2. It has since grown into a Malaysian HR & payroll prototype.

40h → 2h

Monthly payroll admin, 2023 system

~97%

Payroll accuracy, 2023 system

50+

Staff it ran for, every day

PunchClock prototype dashboard

The current prototype

2023: the problem

  • →Staff missed clock entries; the physical clock was slow enough that people worked around it
  • →Payroll was rebuilt by hand every month — about 40 hours of admin
  • →A developer quoted USD 15,000 for a replacement. I had no engineering background

What I built

  • →Real-time punch in and out on Google Sheets + Apps Script
  • →Role-based access, so staff see their own records and managers see the floor
  • →Automated reports, with payroll logic encoded as policy instead of spreadsheet formulas

Today: the prototype

  • →Face-recognition kiosk for clock-in, clock-out and breaks
  • →Payroll runs with overtime, lateness and claims, plus EPF / SOCSO / EIS / PCB estimates
  • →PDF payslips, staff onboarding and company branding
  • →AI rostering and HR document drafting on Gemini

Still unfinished

  • —Prototype data lives in the browser for now; there is no shared backend yet
  • —Statutory figures are estimates, not certified filings
  • —AI rosters aren't yet checked against employment-law hour limits
Stack — 2023: Google Sheets, Apps Script. Prototype: React 19, Vite, Tailwind, in-browser face recognition, Gemini.

The gap between a USD 15,000 quote and a weekend with a language model is the thesis I've built on since.