Why browser-based?
Every other "online tool" site uploads your PDFs and images to their server for processing. That means:
- Your sensitive documents sit on someone else's machine
- Processing speed depends on their server load
- File size limits, watermarks, or forced signups
I built everything using client-side processing — Canvas API, pdf-lib, Tesseract.js (WebAssembly), and more. Your files literally never leave your device.
What's included
PDF Tools (28): Merge, split, compress, convert to Word/Excel, password protect, watermark, page numbers, metadata editor
Image Tools (30): Compressor, background remover, crop, resize, DPI changer, EXIF viewer/remover, OCR (image to text), meme generator, QR code generator
Developer Tools (42): JSON formatter, JWT decoder, Base64/Base32 encoder, regex tester, cron generator, SQL formatter, CSS/JS/HTML minifier
Design Tools (14): CSS gradient, box shadow, border radius generators, color contrast checker (WCAG), Tailwind component builders
Calculators (16): EMI, SIP, BMI, compound interest, salary tax, GST/VAT, ROI, fuel cost
Plus text tools, unit converters, YouTube tools, utilities, and more.
Tech Stack
- Next.js 15 (static export, deployed on Cloudflare Pages)
- TypeScript (strict mode)
- Tailwind CSS (dark mode)
- pdf-lib, pdfjs-dist (PDF processing)
- Tesseract.js (OCR — WebAssembly, zero dependency on external APIs)
- @imgly/background-removal (on-device AI background removal)
SEO and Performance
Every tool page includes:
- FAQ + HowTo structured data (visible in Google rich results)
- BreadcrumbList schema
- BlogPosting schema for blog articles
- Keyword-optimized titles and descriptions
- OG images for social sharing
- next/image with priority hints for fast LCP
Try it
Looking for feedback — especially on the image compressor, PDF merger, and background remover. What tools would you add next?
Top comments (1)
The never-upload principle is more relevant than most people realize, and it maps directly to how I think about professional data. In Opportunity Skill, the user collaboration history stays entirely with their own agent. What gets shared with the network is a set of distilled impressions, compact semantic units that enable matching without exposing raw data. The matching happens server-side against embeddings, but the source material, the conversations, the project history, the rejected proposals, never leaves the user device. Client-first trust, server-side matching.