About this site
One transform, done carefully, with the edges written down.
What it is
FlipPicture reflects a picture across the upright axis, the horizontal axis or both, and builds a symmetrical frame from one half. That is the entire product. There is no account, no queue, no gallery and no upload; the file is decoded by the browser, redrawn onto a canvas, and handed back as a download.
The narrowness is deliberate rather than a stage on the way to something larger. A reflection has a small number of parameters and a surprising number of ways to be got subtly wrong — orientation flags that are themselves mirrored, a re-encode that costs quality the transform did not, a preview that does not match the export — and a page that only has to get one operation right can afford to get those details right.
What it will not do
It does not turn pictures. It does not crop, straighten against a reference, or repair an orientation flag as a feature in its own right; those are separate operations with separate failure modes and they are handled elsewhere. It does not make repeated reflection patterns, blend a reflection into the original, place a reflected copy beside the original as one wide file, or reverse a text layer. Each of those is a real request and each is a different product.
The rule the whole site is built on is that a feature does not get added because the engine happens to make it cheap. A reflection tool with six unrelated buttons on it is worse at reflecting than one without them.
How it is built
A statically exported Next.js site on a content delivery network, with no server behind it and no interface that could accept a file if one were offered. The image work is a canvas transform, a small orientation reader, an encoder call and a byte-level metadata copier, all of it running in the tab. Heavier pieces — the HEIC decoder in particular — are fetched only at the moment a file needs them, so opening the page does not download a codec on the chance you might.
The build refuses to ship if any module that touches an image buffer contains a network call, if a colour is written outside the token file, or if the promise about local processing is missing from a page. Those are automated checks rather than intentions, because an intention is not a guarantee.
What it costs
Nothing to use, and there is no paid tier behind it. The intended business model is advertising: the site is built to carry Google units in the reading material below the working surface, never inside it or above it, each reserving its height before an advert loads so that nothing moves under your cursor. None of that is on the page yet. The domain has not been reviewed and the switch is off, and while it is off those positions render nothing at all rather than holding a band open for something that cannot arrive.
Elsewhere on this site
- The tool
One axis, both, or one half onto the other.
- Privacy
What the site can see, in plain terms.
- Terms
The terms this site is offered under.
- Mirrored or turned
The distinction the scope rests on.