Why build a purely local metadata tool
The starting point was concrete
Over the last year, more platforms began reading C2PA and XMP at upload time to decide whether content is AI-generated. The problem is how crude that decision is: a genuine photograph picks up an “AI Info” label after a single Generative Fill pass or one round of AI denoise. Photographers, e-commerce sellers and designers all hit the same wall.
Nearly every online tool available then worked as upload → server processes → download. For a photo whose GPS you are trying to remove, that flow means sending the location to an unknown service first.
So the architecture had one option
| Typical online tool | This tool | |
|---|---|---|
| Where it processes | Server | Your browser |
| Files uploaded | Yes | No |
| Works offline | No | Yes, once loaded |
| Volume limits | Server quota | Your memory |
| Operator can see your image | Yes | No |
The cost was equally clear: there is no ffmpeg in a browser, so the parsers were written from scratch — JPEG segments, PNG chunks, RIFF chunks, PDF object tables and the MP4 atom tree; HEIC decoding goes through wasm; C2PA signature verification runs in a wasm worker. All of that exists to keep one promise: the file never leaves the device.
Three deliberate restraints
- No pixel-level AI detection. A browser-side guess at “does this look AI-made” can only be a heuristic, and presenting it as a verdict would mislead people. Layer 3 of the detector page is marked “not available” rather than given an impressive-looking percentage.
- No re-encoding. Cleaning JPG / PNG / WebP is a segment-level rewrite; pixel bytes are preserved verbatim. The only exception is HEIC / AVIF, where metadata is bound to structures the decoder needs, so a decode and re-encode is unavoidable — and the page says so explicitly.
- No promise about the outcome. Whether a platform still shows an AI label afterwards depends on its own logic. We guarantee only that the file no longer contains readable C2PA / XMP / EXIF / IPTC.
Nothing touches your files
No account system, no analytics script tracking your files, no background job queue. Once the page has loaded, all logic runs locally and the server does nothing but serve static assets. Page-view analytics (GA4 and Baidu Tongji) record paths, referrers, devices and event counts — never a file name, never metadata content. Details in theprivacy note.
What to do about a bug
The thing to fear most in metadata work is silent corruption: the file looks fine while its structure is already broken. If a cleaned file will not open, displays wrongly, or a platform behaves oddly, send a sample — the engine has dedicated verification scripts covering the edge cases, and a new report becomes a test case.
Contact details are on thecontact page.