Photo effects, processed on your device

Eight filters, grayscale, sepia, invert, duotone, noir, vintage, brightness and contrast, applied as pure pixel operations. Adjust intensity from a whisper to full, and export in the format you need.

How the filters work

Every filter is a mathematical operation on the RGBA bytes of your image. Grayscale uses BT.601 luma weights (0.299 red, 0.587 green, 0.114 blue), the same formula television has used since 1953. Sepia applies a 3×3 colour matrix that shifts warm tones into the reds and yellows. Duotone maps luma to a two-stop gradient between the site's brand colours.

Because the filters operate on raw pixels, the intensity slider blends the filtered result with the original, 0% is untouched, 100% is the full effect. You can dial in exactly the look you want.

Brightness and contrast

Brightness adds or subtracts a fixed value from every channel. Contrast multiplies the distance from mid-grey (128) by a factor, pull it down to fade the image, push it up to make colours punch.

Both are lossless on the pixel level: no clipping until the value actually exceeds 0 or 255, at which point the browser's Uint8ClampedArray handles the bounds for you.

Nothing is uploaded

The image is decoded, filtered in place, and re-encoded in your browser tab. No server, no account, no upload. Disconnect and it still works.

Quick questions

Can I combine filters?

Not in one pass, each run applies one filter. To stack effects, apply one, download, then re-upload and apply the next. The pipeline is lossy (each re-encode costs a little quality), so keep the original for experimentation.

What is duotone?

Duotone maps the brightness of each pixel to a colour gradient. Dark pixels become one colour, light pixels become another, and everything in between is a blend. This tool uses the site's brand palette, deep indigo to cyan, but you can adjust intensity to taste.

Are my images uploaded?

No. Every filter is a pure function operating on pixel data in your browser tab.

Converters

Start here if your files still need converting before you use this tool.