Turned a fully manual, multi-step overtime billing process into a single data-entry point and an instant bill.
Overtime billing was a fully manual Excel process — multi-step hourly-rate calculations and date-wise OT entry redone by hand every cycle, with real error risk and real time cost each period.
Whoever runs the overtime billing cycle at Mongla Port — previously a repeated manual task every period.
Had to match the real hourly-rate and cumulative OT rules exactly. Needed print-ready A4 output, same as portbill, since the result feeds physical paperwork.
Staff enter an employee profile once; the system generates the complete final OT bill instantly with correct hourly rate, cumulative date-wise OT calculation, and A4 print-ready output.
Same plain-JS, no-framework, Cloudflare Pages approach as portbill — each of these is a single-purpose calculation tool, not a platform, so the simplest architecture that works is the right one.
Eliminating manual calculation errors meant the cumulative date-wise OT logic had to handle real edge cases correctly, not just the common case.
Reduced the billing cycle from hours to minutes and eliminated the manual calculation errors that came with redoing the math by hand every period.
The biggest win wasn't a feature — it was moving data entry to a single one-time point (the employee profile), removing the chance for input errors at the exact place they used to happen every cycle.