Zabdoc
We built a Go utility on Cloudflare Workers to parse student grades and generate PDFs in 280ms.
sheet compiles in 280ms from a single user click.
300 students used the tool in its first semester.
System Bottlenecks
The SZABIST portal exports grades as unformatted text. Students had to copy metadata manually into Word templates to format cover sheets for assignments, taking up to ten minutes per submission.
Architectural Move
Hammad built a Svelte interface that sends student portal credentials to a Go backend. The Go service runs in a Cloudflare Worker container, scrapes the portal in memory, and compiles a finished PDF cover sheet on the fly.
Execution Path
Routing Gateway: We set up Hono on Cloudflare Workers to route requests and throttle rate limits.
Edge Containers: We configured Cloudflare Workers Containers to run our Go binary.
Memory Scraper: We wrote a Go routine that logs in, extracts student tables, and compiles PDFs without storing any files on disk.
"I used to spend ten minutes copy-pasting grades into Word. Now I drag my transcript in and it compiles instantly."
— Ahmed Ali, SZABIST Student
Core Stack
- Go (Backend Scraper & Compiler)
- Svelte (Frontend Dashboard)
- Hono & Cloudflare Containers (Docker on Durable Objects)
- Zod (JSON validation)
Under-the-hood Challenge
Running a compiled Go binary inside the V8 sandbox of a Cloudflare Worker. We solved this by packing the Go service into an Alpine-based Docker container and deploying it using Cloudflare's Workers Containers preview.
Zabdoc demonstrates how to deploy compiled Go microservices on serverless edge runtimes. By keeping the parsing stateless and in-memory, we avoided database costs and protected student privacy.