Privacy

Wipefey is built so that it physically cannot leak your photos: the entire pipeline runs in your browser. This page describes exactly what happens on your device and what touches a server — no boilerplate, just what the code does.

Your photos never leave your device

Uploaded files are read with the browser's File API and processed locally — metadata extraction, the AI-marker heuristic, the canvas re-encode, and the metadata rewrite all happen in your browser tab. No image, thumbnail, or metadata is ever uploaded, transmitted, or stored server-side. There is no server-side storage of any kind.

When you close the tab, everything is gone: files, extracted metadata, and cleaned downloads exist only in the page's memory while you work.

The one server call: rate limiting

Before each transform, Wipefey sends a single POST /api/check-limit request to enforce a fair-use limit (about 10 transforms per hour, per IP). That request contains no file data — there is nothing in it to contain file data.

What the server stores: a request counter in Upstash Redis under a key of the form wipefey:ratelimit:<hour-window>:<your-IP> — an IP-keyed counter and nothing else. Keys are scoped to one hour and expire with the window. No profile is built, no history kept, and your IP is used for one purpose: counting your own requests against your own limit.

If the rate-limit service is unreachable, the check fails open and cleaning proceeds anyway — a privacy tool shouldn't stop working because its counter is down.

What stays in your browser

One thing is saved locally: your theme preference, under the localStorage key wipefey:theme. That's it. Wipefey sets no cookies, uses no accounts, and embeds no third-party analytics or advertising scripts. Fonts are self-hosted, so even font requests don't leave this site.

The fine print

Hosting infrastructure (Vercel, which serves the static site and the rate-limit function) necessarily sees standard request metadata such as IP addresses in its logs; that is outside Wipefey's code and covered by Vercel's own policies. And of course, the repository is open source — you can verify every claim on this page by reading the code.