Containerizing the Monthly Workflow
June 3, 2026
Moved the Playwright-based timesheet automation into Docker. The app now runs
on a Hetzner VPS with Caddy handling HTTPS. All Kronos screenshots, invoices,
and water bill PDFs persist in a Docker volume across restarts.
Access the dashboard →
Invoice Generation Pipeline
May 15, 2026
Built a simple Node server that collects hours from UKG/Kronos, renders an
HTML invoice using a Handlebars-style template, and exports it to PDF via
Playwright Chromium. The whole flow is triggered from a web dashboard.