DEV Community

sk8ordie84
sk8ordie84

Posted on

I built a film camera simulator in a single HTML file here's how

Launched today: faxoffice1987.com — 8 film cameras simulated in Canvas 2D.

The constraints I set myself:

  • One HTML file
  • No build step, no dependencies, no npm install
  • Runs offline from a USB drive
  • No backend, no account, no uploads

The hard part: per-pixel color science. Each film stock (Tri-X,
Portra, Velvia, Neopan Acros) has its own render path. Not a filter
on top — a decision at the pixel level.

Stack:

  • Vanilla JS, Canvas 2D
  • Cloudflare Pages + Functions (share links, license validation)
  • Polar.sh for checkout
  • localStorage for state

Pricing experiment: $29 one-time. No subscription. 1 camera free forever.

Would love architecture feedback especially on the color science approach.

Link: https://faxoffice1987.com

Top comments (0)