Should I vibe code
Perform a practical set of PDF edits and conversions in a local browser app
Sejda Web uploads your contracts to Sejda. The homemade version's best feature is that it doesn't.
?
Their verdict, the Web Monthly price and the build-time estimate come from their entry, MIT-licensed. Checked 2026-08-04.
?
Our verdict, the regret score and everything below it. Editorial and unsponsored — nobody can pay to be moved.
The honest answer
why the verdict is what it is
Start with the thing the tagline gets wrong: Sejda Web is not local. Your file goes to Sejda's servers, is processed there and is deleted afterwards, which is exactly why a homemade version has a real advantage — the contract, the payslip, the scan of a passport never leave your laptop. That advantage is genuine, and it is why the neighbouring Smallpdf entry says ship it. Sejda is the harsher call because of the tool count. Roughly thirty of its forty tools are a library call with a form in front of them, and you will build twenty of those in a weekend feeling unstoppable. The four that made you open the pricing page are not in that set. Editing existing body text means rewriting a content stream against a font that was subset-embedded with only the glyphs the original author happened to use, so the em dash you just typed renders as nothing. OCR on a phone photo of a receipt is a model, not a function. Converting to Word is a layout-reconstruction problem people have built companies around. And the PDFs that need fixing are by definition the malformed ones — a broken xref table, an XFA form, a producer string naming some 2007 scanner driver. Your suite will handle every file you tested it on.
What actually breaks
not "if". the specific failures.
- Text editing, first and worst. Embedded fonts are usually subsets carrying only the glyphs the original document used, so swapping a word for one that needs a different character produces blank space or a tofu box — and the file still opens fine, so nothing warns you
- The output file, if a tool writes over its input. There is no undo for a 200-page scan whose original you deleted, and compress-in-place is exactly the default an agent reaches for
- OCR, which will be good enough on a clean export and useless on the photographed receipt that was the only reason you wanted OCR
- PDF-to-Word, which reconstructs a layout it cannot see. Tables come back as a scatter of text boxes, and the document is unusable for the one purpose anybody converts a PDF for
- Encrypted, XFA and damaged files, which are a meaningful slice of real-world PDFs and which most libraries handle by throwing
- The browser tab, if you push the work client-side. A 300MB scan through WebAssembly is a frozen page and a lost afternoon
- Any hosted version, the moment somebody else can upload to it. A PDF parser is a file-format parser, and you have just pointed one at untrusted input from strangers
Is that you?
the verdict is a default, not a law
- It runs on your machine, over your files, and nothing is uploaded anywhere
- The tools you need are the mechanical ones: merge, split, rotate, stamp, extract pages, compress, fill an AcroForm field
- It writes a new file every time and never touches the original
- You are batching — a hundred invoices through the same transform is where a script comfortably beats any web UI
- The plan is a hosted version other people upload to, because you have then built a file-parsing service exposed to the internet
- The requirement is editing existing body text and having it look untouched
- You need redaction — a black rectangle leaves the text in the file, and that is a neighbouring entry's failure mode arriving in yours
- The originals are being overwritten and there is no second copy anywhere
- Somebody downstream is relying on the OCR being right about a number
If you build it anyway
the checklist, then the prompt that enforces it
- Never write over the input. Output to a new path, always, and make the destructive variant something the caller has to ask for by name.
- Verify after every operation: reopen the output, count the pages, confirm the text layer still extracts. A silently corrupt PDF looks identical to a good one in a file listing.
- Use a maintained toolkit — qpdf, pdfcpu, pypdf, pdf-lib — and do not let an agent hand-roll object or xref manipulation.
- Keep it local. The moment there is an upload endpoint you own a parser being fed untrusted input, and PDF parsers have a long history of memory-safety bugs.
- If it must be hosted, process in a sandboxed short-lived worker with no network egress, cap file size and page count, and delete on a timer you can actually prove.
- Treat text editing as out of scope until you have read what happens with subset-embedded fonts. An annotation layer is honest; a rewritten content stream is not.
- If redaction appears on the feature list, stop. Removing the bytes, the text layer, the metadata and the page thumbnail is the whole job, and a black box is none of it.
I want a local PDF toolkit — merge, split, compress, extract, fill forms. Build it as a CLI with a local-only UI on top, and hold this order. 1. Before any feature, establish the file-safety rule: every operation reads an input path and writes a new output path. Overwriting the input is not a default, not a flag I get for free, and not something you add for convenience. Put that sentence in the README. 2. Write the verification step next, before the first real tool. After every operation, reopen the output, assert the page count, assert the text layer still extracts, assert the file opens. A silently corrupt PDF is the failure this project exists to prevent. 3. Use qpdf, pdfcpu, pypdf or pdf-lib. Do not hand-roll object, xref or content stream manipulation, and tell me when a library already does what I asked. 4. Then the mechanical tools, in this order: merge, split, extract pages, rotate, compress, fill AcroForm fields. Each one gets a test against a deliberately malformed input file, not just a clean one. 5. Everything runs locally. There is no upload endpoint. If I ask for a hosted version, stop and explain that I would be exposing a file-format parser to strangers, and that file-size caps, page caps, timeouts and a sandbox with no network egress come before the upload form gets built. 6. If I ask to edit existing body text, push back first: explain subset-embedded fonts, show me what happens to a character the subset does not contain, and offer an overlay annotation instead. 7. Refuse to implement redaction as a drawn rectangle. If I want redaction it removes text objects, metadata, attachments and thumbnails, or it does not ship at all. 8. No telemetry, and no silent cloud fallback for OCR. If a file is about to leave this machine, say so and make me confirm. 9. Out of scope, and say so up front: PDF-to-Word layout reconstruction, XFA forms, and signature validation. Then tell me Sejda Web is $7.50 a month with a $5 week pass, and that for a one-off job that is the better trade.
That one keeps you out of trouble. For the prompt that actually builds it, canivibecodeit.com has one.
their build prompt ↗Or don’t build it
the boring option, and the way back out
For a one-off — flatten a form, OCR a stack of scans, turn a 90MB deck into something emailable — the $5 week pass is the correct answer and you can stop reading. Buy the annual Desktop bundle if you do this weekly and the documents matter, because that version processes on your own machine rather than theirs. Build your own if the work is repetitive and mechanical, or if the documents are confidential enough that uploading them to any vendor is the actual problem you were trying to solve.
$7.5/mo is cheaper than your weekend.
There is barely anything to exit from, which is the nice part. Keep every operation as a function over files with a CLI on top, so the UI stays disposable and the batch scripts you wrote outlive it. The one thing worth protecting is the originals: a directory of untouched sources and a separate directory of derived output means a bad release costs you a rerun rather than a document. If you ever did add a server, the export you care about is not the files — it is a demonstrable certainty that the uploaded ones are gone.
Actively developed self-hosted web app covering most of Sejda's tool list, and the honest answer to whether this needs building again.
Go PDF processor and CLI with validation built in, which is the part homemade toolkits skip.
Questions
Smallpdf is rated SHIP IT here. Why is Sejda DEMO ONLY?
Because of what each entry is really about. Smallpdf's case is the mechanical tools — merge, split, compress — and running those locally instead of uploading to a stranger is a straightforwardly good idea. Sejda sells a much wider bench, and the tools that pull people onto a paid plan are the four hard ones: edit existing text, OCR, convert to Word, redact. You will build the easy thirty in a weekend and then discover that the four you actually wanted are each a project on their own.
Is Sejda Web really not local? The tagline says browser app.
Sejda's own privacy policy says uploaded files and processed outputs are stored on their servers long enough to let you download the result, then deleted. Sejda Desktop is the one that keeps files on your machine. This matters more than it sounds, because "the documents never leave my laptop" is the strongest argument for building your own, and it only holds if you actually build it that way — rather than reaching for a hosted conversion API the first time OCR gets hard.
What single thing should I make the agent do first?
Never write over the input file. It sounds trivial and it is the failure people actually hit: a compress-in-place run across a folder of scans, one bug in the size heuristic, and the originals are gone. Second, add a verification step that reopens each output and asserts the page count and text layer. Corrupt PDFs do not announce themselves — they open fine in the viewer you tested with and fail in the one your recipient uses.
Every week, someone ships something they shouldn’t have.
New verdicts, the worst thing that landed in the trap, and the occasional incident report. No other email, ever.
The best reason to self-host PDF tools: your documents stop being uploaded to strangers.
Merge and compress are library calls. "Sign" is a legal instrument, and yours is a picture of a squiggle.
PDF is a format that hates you. Annotation is fine; editing is where it fights back.
last reviewed 2026-08-05 · verdict is editorial and unsponsored · shared entry data from canivibecodeit under MIT · not legal advice