[verdict][curated prompt][source: filechanger.io]
Can I vibecode FileChanger?
// one session, and a personal version you can actually use
The conversion is other people's software. Pandoc, ImageMagick and FFmpeg do the actual work, the format list looks enormous because those three projects are enormous, and a coding agent can wire all of them behind an upload form and a REST endpoint in one sitting. What a subscription buys is not the conversion, it is somebody else running a box that eats untrusted files from strangers all day without falling over, and keeping a few hundred format pairs working after every upstream release. Point it at your own files on your own machine and most of that risk simply is not yours, which is why this one is a yes.
confidence: high
what it is: One API call converts documents, images, audio and video between a few hundred formats
Buildability index · an editorial game
- Price 39 $/month weight: plus 3
- Time one sitting weight: plus 3
- Category documents and pdfs no weight
- Moat execution quality · infrastructure scale weight: minus 3
- Confidence high weight: plus 1
- What you lose 5 items weight: minus 2
- Site filechanger.io (si apre in una nuova scheda) no weight
The maths works, but not by much: look at what you lose before you start.
Gioco editoriale: il verdetto dice se un agente può, l’indice se conviene.
// free tier: The free tier is real and permanent: 200 MB each of documents, images and audio per month, 50 MB of video, and API keys plus MCP access included.
What you build
Accept a file, shell out to pandoc, ImageMagick or FFmpeg depending on what it is, and hand the converted bytes back over HTTP or MCP.
what you need
- pandoc
- FFmpeg
- ImageMagick
- LibreOffice headless for Office formats
- Typst or a LaTeX install if you want PDF out
Submitted by the person who runs FileChanger, so the verdict is deliberately the unflattering one: the engines are all open source and the DIY build is a sitting. Pricing checked 2026-08-07.
The prompt
One session with a coding agent and your version runs.
Build me a personal file conversion service in an empty repo. Requirements:
- Python 3.12, FastAPI, uv for dependencies, SQLite for job state. One process,
no broker, no microservices, no alternative stacks.
- Never write a converter. Shell out to pandoc for markup and documents,
LibreOffice headless for Office, ImageMagick for images, FFmpeg for media.
- POST /convert takes a file, a source and a target format and returns the bytes
below a size threshold set in config. Above it the same route returns a job
id, GET /jobs/{id} reports its state and GET /jobs/{id}/result streams the
file. One background worker thread is enough, do not add Celery.
- Build the format matrix at startup from `pandoc --list-input-formats`,
`--list-output-formats`, `ffmpeg -formats` and `magick -list format` rather
than hardcoding it, and serve it at GET /formats.
- Treat every upload as hostile: convert in a temp dir with a wall-clock
timeout, an output size cap and no network, then delete the inputs whether it
worked or not. Log the failing command and its stderr, never return either.
- Ship an MCP server over stdio using the official Python SDK, exposing convert
and formats as tools so agents can convert without going through HTTP.
- Authenticate with API keys stored hashed in SQLite. Show the plaintext once at
creation and support revocation.
- One HTML page, no JS framework: pick a file, pick a target from /formats,
download the result.
- One Dockerfile installing pandoc, typst, libreoffice-core, imagemagick and
ffmpeg, a compose file with a volume for the database, config in .env and a
committed .env.example.
- Out of scope: accounts, billing, metering, quotas, telemetry, multi-tenancy
and any hosted control plane.
- Test one round trip per engine (Markdown to PDF, PNG to WebP, WAV to MP3), an
oversized upload and a conversion that hits the timeout. README covers setup,
formats, security assumptions and where data lives. Finish by running the
tests and listing the commands used. Curated prompt: written and reviewed by hand for this app. In English on purpose — it is the language coding agents work best in.
What you lose
- sandboxing, because your version runs files straight through the same toolchain as everything else on the machine
- the long tail of format pairs, where the fix is usually a missing font, a filter flag or an upstream bug
- queueing and timeouts for large video, which is where the compute bill actually lives
- a hosted MCP server and API keys your other tools can reach from anywhere, not just from localhost
- somebody else being on call when a LibreOffice or LaTeX upgrade quietly breaks PDF output
Why people still pay
Nobody pays for the conversions that work. They pay for the awkward ones: the DOCX with tracked changes, the HEIC nobody can open, the MXF from a camera, the 4 GB video that has to finish while a browser tab is still open. Doing those reliably means keeping a toolchain installed, patched and fenced off from the files it is fed, and doing it for other people means doing it while strangers upload whatever they like. That upkeep is the product. The convert button is a weekend.
moat: Execution quality Infrastructure scale what a moat is
the format long tail and the cost of running an untrusted-file box in public. Nothing structural.
Free alternatives
Not in the mood to build it? These already exist, they are free or open source, and we checked them one by one.
Rejected (2) — and why
- CloudConvert free tier (si apre in una nuova scheda) — Ten conversions a day. Fine for an emergency, not a replacement for anything you do regularly.
- Stirling PDF (si apre in una nuova scheda) — Free, alive and genuinely good, but PDF only. It does not touch audio, video, images or markup formats, so it replaces a slice rather than the job.
Who has already built it
Starting from here is still vibecoding: the prompt is for when you want it exactly your way.
- Pandoc (opens in a new tab) — The document half of any converter: markup, Office, EPUB and PDF in essentially any direction.
- FFmpeg (opens in a new tab) — The audio and video half. Everything that converts media is calling this underneath.
- ImageMagick (opens in a new tab) — Images, including the formats browsers refuse to open.
Do you agree?
The vote balance
Ancora nessun voto: il tuo è il primo.
Nessun voto ancora — il primo pesa.