Built 6 free browser-only tools instead of one SaaS — here's the tech stack and what I got wrong
Backstory: I kept needing small file utilities (merge a PDF, compress a photo for a form, make a collage) and every free option online wanted me to upload the file to their server, then capped me at 3 files a day unless I paid. For a contract or an ID scan that's a strange thing to accept.
So instead of building one SaaS I built six single-purpose sites that do the work entirely client-side. No server, no account, no upload, no watermark.
Tech stack (deliberately boring):
- pdf-lib for everything PDF (merge, split, rotate, page numbers, watermark, sign, encrypt)
- canvas + WebCodecs for images (compress, resize, convert, crop)
- Vanilla JS, static HTML. No framework, no backend, no database.
- Hosted as static files. Hosting cost is basically zero, which is the whole business model: no server means no per-user cost, so "free forever" is actually sustainable.
- Capacitor to wrap one of them into Android and iOS apps from the same codebase.
What I got wrong:
I assumed "no upload" would sell itself. It doesn't. Users don't read the homepage, and privacy is an invisible feature. My conversion problem is communication, not tech.
I built breadth before distribution. Six sites and ~560 pages live, and I only recently started seriously checking which ones actually rank. Build-then-market is the classic mistake and I made it anyway.
Client-side has real limits I under-planned for: no OCR, and a 200 MB PDF will choke a low-end phone because everything is in memory.
Revenue: essentially zero so far — ads only, and I'd rather be honest about that than pretend. The interesting part for this sub is the cost side: near-zero infrastructure means the runway is infinite, which changes what "failure" even means.
Happy to answer anything about the client-side approach. The sites are pdfonlinefree.com and imageonlinefree.com if you want to see what I mean.