Generate Clean, Accessibility-First Covers. Zero Tracking. Zero Friction.
Why I Built This
I used to generate LinkedIn cover images with a local Python script. It was simple, but I had to wrestle with virtual environments every time I needed a new one. I just wanted a reliable, no-setup way to make clean, readable covers.
So I rebuilt it as a lightweight web app using Azure Functions and Next.js. With no login and no dependencies, you can just generate and download.
Only after it was working did I add basic analytics. It was initially just for curiosity, but it soon became a way to learn from real usage: which settings failed, which were popular, and what to refine next.
That turned Cover Craft from a simple image generator into a quiet lesson in observable, privacy-first software.
🧭 Engineering Principles
Shift-Left Accessibility
Automated WCAG AA contrast validation is baked into the generation pipeline, preventing inaccessible output by design.
Privacy by Design
A zero-data architecture with no cookies, no tracking, and no persistence, ensuring complete user anonymity.
Stateless Reliability
Server-side rendering via Azure Functions ensures consistent visual fidelity and cross-platform rendering accuracy.
Privacy-First Observability
Structured, anonymized telemetry provides system insights and performance monitoring without compromising user privacy.