Why I Built All 170 Tools to Run in the Browser
When I started building UtilVox, the obvious
approach was server-side processing. Upload file →
process on server → return result. Every major
tool site works this way.
I went the opposite direction. Here's why —
and what I learned.
The Problem With Server-Side Tool Sites
Most free online tools have a dirty secret:
Your files go to their servers.
When you "compress" a PDF on a popular site,
that file travels to their infrastructure,
gets processed, stored (temporarily or permanently),
and returned. You're trusting a random website
with potentially sensitive documents.
Contracts. Medical records. Financial statements.
Tax documents. People upload all of this to
"free" PDF tools without thinking about it.
The Client-Side Approach
I rebuilt everything using browser APIs:
- PDF processing → PDF.js + client-side compression
- Image manipulation → Canvas API + WebAssembly
- Currency conversion → Client fetches from forex API directly
- JWT decoding → Pure JavaScript (it's just Base64)
- JSON formatting → JSON.parse() + JSON.stringify()
The result: your files never leave your device.
The Tradeoffs
Nothing is free. Client-side processing has limits:
Memory constraints
Large files (50MB+ PDFs) can crash browser tabs
on low-memory devices. Server processing handles
this better.
Processing speed
WebAssembly is fast but not as fast as native
server code for heavy operations like OCR.
No persistence
Can't save user history, preferences, or
previous uploads without a backend.
For 90% of use cases, these tradeoffs are
worth it. The 10% who need server-side power
have Adobe Acrobat.
The Stack
- Next.js 14 App Router — Server Components for fast LCP, Client Components for interactivity
- TypeScript — 170 tools, type safety is essential
- Tailwind CSS — consistent UI across every tool
- Vercel — edge deployment, global CDN
- Cloudflare — DNS, DDoS protection
What I'd Do Differently
Ship faster. I spent too long perfecting
individual tools before launching. Users don't
care about perfection — they care about
whether the tool works.
Build in public from day one. The tools that
got the most early traffic were ones I tweeted
about while building.
Current Status
170+ tools live at utilvox.com.
Working on: SEO, backlinks, and adding
requested tools from user feedback.
If you're building something similar or have
questions about the architecture — ask below.
Top comments (0)