68 tools — compress, convert, edit, redact, remove backgrounds, merge, split, cut, OCR, transcribe — running 100% in your browser.
No uploads. No sign-up. No watermark. No limits. Free forever. 16 languages.
Open source. Edits PDF text in the file’s own font, transcribes audio with Whisper on your device, and never hands your files to anyone.
Open Fizzdoc → · All tools · How it works · Contribute
Most free online file tools ask you to upload your contract, payslip, bank statement, passport photo or voice recording to someone else's server. Fizzdoc doesn't have a server to upload to. Everything runs inside your browser tab with WebAssembly and JavaScript, and the page's Content Security Policy blocks it from connecting to any other site — you can check it yourself in the Network tab.
| What you get | |
|---|---|
| 🔒 Your file stays on your device | No upload endpoint exists, and the CSP blocks connections to any other site |
| 🧰 68 tools in one place | PDF, Word, Excel, PowerPoint, images, audio, JSON and Mermaid |
| ✏️ Edit PDF text in its own font | Changed lines are rewritten inside the PDF with its embedded font, size and colour |
| 🎙️ Speech to text on the device | Whisper runs in the browser: TXT, SRT or VTT, offline after a one-time download |
| 🆓 Free forever | No account, no daily limits, no watermark, no premium tier |
| 🌍 16 languages | Including Hindi, Bengali, Marathi, Tamil and Telugu |
| 📱 Nothing to install | Any modern browser, on phones too |
| 📖 Open source | Apache-2.0, every line on GitHub |
| I want to… | Use |
|---|---|
| Get a photo or signature under 20 / 50 / 100 KB for an exam, job or government form | Compress image to 20 KB · 50 KB · 100 KB |
| Compress images without losing quality, JPG, PNG or WebP, in bulk | Compress Image |
| Cut an MP3, trim a song or make a ringtone, with no quality loss | Cut & Split Audio |
| Join MP3 or M4A files or voice notes into one track | Merge Audio |
| Turn a recording, voice note or video into text, privately | Audio to Text |
| Make SRT subtitles for a video, without uploading it | Subtitle Generator |
| Reduce PDF size for email or an upload portal | Compress PDF |
| Edit text in a PDF, or black out personal details for good | Edit PDF · Redact PDF |
| Turn a PDF into an editable Word file, or Word into PDF | PDF to Word · Word to PDF |
| Remove the password from a bank statement, or add one | Unlock PDF · Protect PDF |
| Remove the background from a photo, or put white, a colour, a blur or another photo behind, at full resolution | Remove Background |
| Copy text from a scanned PDF, a photo or a screenshot | OCR PDF · Image to Text |
| Combine photos or screenshots into one PDF | JPG to PDF · PNG to PDF |
| Convert everyday formats: PNG ↔ JPG, WebP → JPG, Excel ↔ CSV | Convert Image · Excel to CSV · CSV to Excel |
| Turn a spreadsheet into JSON for an API, or open JSON in Excel | Excel to JSON · JSON to Excel |
| Export a Mermaid diagram as PNG or SVG for slides, docs or a README | Mermaid to PNG · Mermaid to SVG |
| Remove hidden author and company names before sharing an Office file or PDF | Word · Excel · PowerPoint · PDF |
| Format | Tools |
|---|---|
| Edit PDF (change text in place, in the PDF’s own font) · Redact (black out text for good) · Compress · Merge · Split · Extract pages · Reorder pages · Rotate · Delete pages · Page numbers · Watermark · Unlock (incl. Aadhaar, e-PAN, bank statements, ITR-V) · Protect (AES-256) · Remove metadata · OCR · PDF → Scanned PDF | |
| PDF conversions | PDF → Word · PDF → PowerPoint · PDF → JPG · PDF → PNG · PDF → Text · PDF → Markdown · JPG → PDF · PNG → PDF · Text → PDF · Markdown → PDF |
| Word | Word → PDF · Compress · Remove metadata · Extract images |
| Excel | Excel → CSV · CSV → Excel · Excel → JSON · JSON → Excel · Compress · Remove metadata · Extract images |
| PowerPoint | Compress · Remove metadata · Extract images |
| Images | Remove background (AI on your device, full resolution) · Remove GIF background · Remove video background (no green screen, sound kept) · WhatsApp sticker maker · Compress (to 20 KB, 50 KB, 100 KB for forms) · Resize (larger or smaller) · Convert · PNG → JPG · JPG → PNG · WebP → JPG · JPG → WebP · Image → Text (select text right on the photo, like Live Text) · Mermaid → PNG · Mermaid → SVG (diagrams from code, with a preview and ready-to-use examples) |
| Audio | Cut & Split Audio (trim or split an MP3/M4A on a waveform, preview every part) · Merge Audio (listen before you download) — no re-encoding, so no quality loss · Audio to Text · MP3 to Text · Video to Text · Subtitle Generator (SRT/VTT) — speech to text with OpenAI's Whisper running on your device; the model downloads once, then works offline |
Google Docs, Sheets and Slides work too: download as .docx / .xlsx / .pptx and use the matching tool. Nothing is sent to Google.
Languages: English · हिन्दी · বাংলা · मराठी · தமிழ் · తెలుగు · Español · Português · Français · Deutsch · Italiano · Nederlands · Polski · Türkçe · Bahasa Indonesia · Tiếng Việt — add yours.
Fizzdoc also runs as a local MCP server, so Claude Code, Codex, Claude Desktop, Cursor and other AI agents can merge, split, rotate, protect or unlock PDFs and trim, split or join MP3/M4A on your machine, with nothing uploaded.
It's published on npm as fizzdoc-mcp. The tools:
- PDF: merge, split, extract, reorder, delete and rotate pages, add or remove a password, remove hidden metadata, page count
- Audio: trim, split and join MP3/M4A without re-encoding
- Office: remove author, company and other hidden metadata from .docx, .xlsx and .pptx
claude mcp add fizzdoc -- npx -y fizzdoc-mcpOn Windows, use claude mcp add fizzdoc -- cmd /c npx -y fizzdoc-mcp. Setup for Codex and other clients, and the full tool list: mcp/README.md. Image tools are on the way (#61).
Safe for bank statements, ID cards, payslips, medical records and client files, because:
- No uploads, ever. There is no upload endpoint and no backend that could receive a file.
- The browser enforces it. Every page ships a Content Security Policy (
connect-src 'self') that blocks connections to any other site. - No account, no cookies, no analytics, no ads, no trackers. The only things stored are your theme and whether you've seen the language tip.
- Nothing is kept. Close the tab and your file, passwords and results are gone.
Check it yourself:
- Open any tool, then your browser's developer tools → Network.
- Run a job.
- You'll see the app's own files load, and no request carrying your document.
The test suite does the same in real Chromium on every commit: it runs real jobs (merge, edit, OCR and more) and fails if any request goes to another origin; the merge test also fails on any request that isn't a plain GET or that carries a body. The core PDF jobs (merge, split, rotate, delete, protect, unlock) run qpdf in a disposable Web Worker that is terminated afterwards, taking your file, passwords and memory with it.
Most browser PDF tools copy pages with a library that silently drops bookmarks, forms and links. Fizzdoc's core PDF tools use qpdf compiled to WebAssembly, which rewrites the document structure instead:
| Merge | Split / delete | Rotate | |
|---|---|---|---|
| Form fields | ✅ from every file | ✅ removed cleanly with their pages | ✅ |
| Internal links | ✅ retargeted | ✅ | ✅ |
| Bookmarks | ✅ first file · |
✅ · |
✅ |
| Page quality | Lossless | Lossless | Lossless |
When something genuinely can't be carried over (a digital signature, accessibility tags), Fizzdoc tells you instead of dropping it silently.
- Static site, zero backend. Nothing to scale, nothing to breach, nothing to pay for.
- Lazy engines. First load is about 15 KB of gzipped app code; each engine, including the Whisper speech model, downloads only when a tool needs it.
- One registry drives everything. Add a tool in
src/site.tsand its page, SEO tags, sitemap entry and footer link appear in all 16 languages.
Explore the interactive architecture map or read docs/ARCHITECTURE.md.
Is it really private? How can I check?
Yes. There is no server that receives files: the site is static, and every page ships a Content Security Policy that only allows connections to its own origin. Open DevTools → Network, run any tool, and you'll see no request carrying your document. The test suite fails if one ever appears.
Is it really free forever? What's the catch?
There isn't one. Your browser does the work, so Fizzdoc is just static files that cost almost nothing to host — there are no servers to pay for. No account, no daily limit, no watermark, no ads, no premium tier. And it's open source under Apache-2.0, so anyone can run their own copy.
Does it work offline or on a phone?
It works in any modern browser on phones, tablets and desktops. An installable offline app is on the roadmap.
What doesn't it do (yet)?
OCR is English-only for now, speech to text works best on clear English, audio tools handle MP3 and M4A only, and PowerPoint → PDF and legacy .doc/.xls/.ppt aren't supported. Edit PDF can only use letters the PDF's font already contains; other lines are covered and redrawn in a standard font, so to hide text for good use Redact PDF. See the roadmap below.
Or on your machine:
git clone https://github.com/kingrishabdugar/fizzdoc.git
cd fizzdoc
npm install
npm run dev # http://localhost:5173npm run check # typecheck + unit tests
npm run test:e2e # production build + real-browser tests
npm run build # static site in dist/ — deploy anywhereRequires Node 22+. Deploys as plain static files to Cloudflare Pages, Netlify, GitHub Pages or any web server.
Fizzdoc is built to be easy to contribute to — you don't need to know anything about PDFs to help.
- 🌍 Translate — add or improve a language by editing one JSON file. How →
- 🧰 Add a tool — a new tool is one registry entry, one engine function and a test. How →
- 🎃 Good first issues — issues labelled
good first issueare scoped and ready to pick up, all year round. Guidelines → - 🐛 Fix a bug — every issue labelled
good first issueis scoped for a first PR. - 💡 Ideas — open a feature request for the tool you wish existed.
Read CONTRIBUTING.md to get started. First-time contributors are very welcome.
- Installable offline app (PWA)
- Sign PDF (draw or type a signature)
- Page thumbnails with drag-and-drop reordering
- OCR in more languages, downloaded on demand
- Layout-faithful PDF → Word (tables, columns, images)
- Fill PDF forms
- More audio formats (WAV, OPUS, WebM) and conversion to MP3 or M4A
- More tools in the MCP server: compress, convert, OCR, redact (#61)
Vote with a 👍 on the issues you want most.
If Fizzdoc saved you from uploading something private, give it a star — it's the single best way to help more people find a private alternative.
Fizzdoc would not exist without these open-source projects and the people who maintain them:
| Project | What it does in Fizzdoc | By |
|---|---|---|
| qpdf | Merge, split, rotate, encrypt and decrypt PDFs losslessly | @jberkenbilt and the qpdf contributors |
| qpdf-wasm | qpdf compiled to WebAssembly | @neslinesli93 |
| pdf.js | Renders pages, extracts text, powers the editor | Mozilla and contributors |
| pdf-lib | Writes and edits PDFs, stamps, the OCR text layer | @Hopding |
| Tesseract and tesseract.js | Text recognition, compiled to WebAssembly | tesseract-ocr and naptha |
| BiRefNet | The AI model that removes backgrounds (BiRefNet-lite: 512 px export by studioludens, 1024 px export for “Sharper edges” by onnx-community) | @ZhengPeng7 and co-authors |
| U²-Net | The light background model for phones with little memory | @xuebinqin |
| ONNX Runtime Web | Runs the AI models in the browser, on the GPU (WebGPU) or CPU | Microsoft and contributors |
| gifuct-js and gifenc | Read and write animated GIFs for GIF background removal | @matt-way and @mattdesl |
| Mediabunny | Reads and writes videos for video background removal, keeping the sound | @Vanilagy |
| Whisper and Transformers.js | Speech to text, on the device | OpenAI and Hugging Face |
| fflate | Reads and writes Word, Excel, PowerPoint and ZIP files | @101arrowz |
| Inter | The typeface | @rsms |
| Archify | Generates the interactive architecture map | @tt-a1i |
Built and tested with Vite, TypeScript, Vitest and Playwright. Full license details are in THIRD_PARTY_NOTICES.md.
Fizzdoc is designed and built by Rishab Dugar, a Senior Data Scientist in Bengaluru working on AI systems and production data platforms. It started from a simple frustration: why should a payslip or a passport scan travel to someone else's server just to be merged or compressed? (How it was built: Independent work.)
Fizzdoc was designed and built independently by Rishab Dugar, from scratch, after researching how document processing can run entirely in a browser without a server. It is not affiliated with, endorsed by, or derived from any other PDF or document service.
Any resemblance to other products is coincidental. Tools in this category solve the same everyday tasks (merge, split, compress, convert), and Fizzdoc deliberately builds on the best open technologies available for each job, so some overlap in features or wording is natural:
- PDF structure (merge, split, rotate, encrypt): qpdf compiled to WebAssembly with Emscripten, run in a disposable Web Worker with files mounted through
WORKERFS - Rendering and text extraction: Mozilla pdf.js
- Writing and editing PDFs: pdf-lib
- OCR: Tesseract's LSTM engine via tesseract.js, self-hosted on the site's own origin
- Word, Excel and PowerPoint: Office Open XML read and written directly, with fflate for the ZIP containers
- Images: the browser's own codecs through
createImageBitmapandOffscreenCanvas - Word, text and Markdown → PDF: the browser's native print-to-PDF pipeline
- Privacy by construction: no upload endpoint at all, plus a strict Content Security Policy (
connect-src 'self') that the browser enforces - Build and tests: TypeScript, Vite with static prerendering, Vitest and Playwright
Familiar interface patterns, such as a grid of tools per format, drag-and-drop upload and one page per task, are common conventions in document tools rather than borrowed designs. The code in this repository was written for Fizzdoc; the libraries above are used under their own licenses, listed in THIRD_PARTY_NOTICES.md.
Apache-2.0 © Rishab Dugar. You're free to use, modify and share Fizzdoc, including commercially, as long as you keep the copyright and the NOTICE file crediting the original project in every copy or derivative. Fizzdoc stands on the shoulders of the projects listed in Credits — see THIRD_PARTY_NOTICES.md. Product names mentioned in this README are trademarks of their owners and are used only for comparison.
Keywords: free PDF editor online, merge PDF without uploading, compress PDF free, PDF to Word, redact PDF, OCR, compress image without losing quality, reduce photo size to 50 KB, image resizer, JPG to PNG, WebP to JPG, cut MP3 online free, merge MP3, audio trimmer, Word to PDF, Excel to CSV, Excel to JSON, JSON to Excel, Mermaid to PNG, Mermaid to SVG, Mermaid diagram examples, remove metadata, speech to text, edit PDF same font, private file converter, no upload, free forever, open-source, WebAssembly, client-side.





