The Problem
Most online file compression and conversion tools require uploading your files to a server. For personal photos, exam documents, or client files, that's not always comfortable — you're trusting a third-party server with your data, even if temporarily.
I wanted a tool that does everything locally in the browser — no uploads, no server processing, no signup friction.
What I Built
Mini Compressor (https://minicompressor.online) is a free web app that handles:
- 🖼️ Image compression — JPG, PNG, WebP, with target-size input (compress to exactly 50KB, 100KB, etc.) instead of guessing quality percentages
- 📄 Document conversion — PDF ↔ Word, PDF ↔ PNG, PDF/Word → Excel
- 🔒 100% client-side processing using the Canvas API and libraries like pdf.js and mammoth.js — nothing ever touches a server
Tech Stack
- React + Vite
- Canvas API for image processing
- pdf.js for PDF parsing
- mammoth.js for Word document parsing
- Deployed on Vercel
Why Target-Size Compression?
Most compressors only offer a quality slider (10%-100%), which means trial and error to hit a specific file size requirement — something I ran into constantly with exam forms and job application portals that enforce strict KB limits (a very common requirement in India for competitive exams like SSC, UPSC, NEET).
So instead, Mini Compressor lets you type in your target size directly (e.g., "50KB") and it iteratively adjusts compression to get as close as possible.
What's Next
I'm actively improving the document conversion accuracy (formatting fidelity is genuinely hard to get right in-browser vs. server-side tools like LibreOffice), and considering adding OCR support for scanned PDFs.
Would love feedback from this community — especially if you've tackled similar client-side file processing challenges!
🔗 Try it here: https://minicompressor.online
Top comments (0)