I've always loved the look of film photography, the warmth of Kodak
Portra, the gritty contrast of Ilford HP5, the washed-out nostalgia
of a disposable camera. But every tool that tried to replicate these
looks either cost money, required an account, or slapped a watermark
on your photo.
So I built Polaroma. A free, browser-based film and analog photo editor.
No account, no subscription, no watermarks. Everything runs locally in
your browser, your photos never touch a server.
The hardest part: getting the math right
This is where I spent most of my 4 months.
Film presets aren't just "add some warmth and call it Kodak." Real film
stocks have specific color responses, shadows behave differently from
highlights, grain has texture and structure, and the way light bleeds
into dark areas is very particular.
I had to study actual film stock characteristics and translate them into
precise pixel matrix operations. Every preset in Polaroma is a carefully
engineered set of mathematical transformations — color curves, channel
mixing, luminance mapping, applied directly in the browser using
canvas APIs.
The goal was zero AI, zero guessing. Just clean, deterministic math that
produces the same organic result every time.
What I ended up building
- 20+ hand-crafted presets — film stocks, VHS, CRT, Polaroid, Y2K digicam, avant-garde styles
- Full manual controls — exposure, highlights, shadows, tint, grain, chromatic aberration
- Instant rendering — no cloud processing, everything happens in milliseconds
- Privacy-first — your images never leave your device
What I'd do differently
I underestimated how long the preset calibration would take. I thought
the UI would be the hard part, it wasn't. Getting a Fuji Velvia preset
to actually feel like Fuji Velvia, rather than just looking vaguely
green and contrasty, took way longer than expected.
If I were starting over, I'd build a calibration testing pipeline earlier
instead of eyeballing adjustments one by one.
Try it out
If you shoot photos, edit content, or just like making things look cool,
give it a try at polaroma.online.
Would love feedback from fellow devs, especially on the rendering approach.
Always curious how others have tackled color science in the browser.
Top comments (0)