Project
Roulette

Moodboard

An infinite canvas you can throw images and notes onto.

IntermediateWeb appCreative12–26hAI-buildable 3/5no setupworth shipping

A freeform board with pan and zoom, where images, colour swatches and notes are placed anywhere. Infinite canvas mechanics — transform maths, culling off-screen items, keeping zoom anchored to the cursor — are broadly reusable once you've built them.

UI
Logic
Useful

Hosting · Free forever

Deploys free on GitHub Pages, Cloudflare Pages or Vercel Hobby.

Deploy it and share a link.

Core features · 7

  • Pan and zoom an unbounded canvas
  • Drop images anywhere on the board
  • Add text notes and colour swatches
  • Items drag, resize and layer
  • Zoom anchors to the cursor position
  • Off-screen items are culled so large boards stay fast
  • The board persists and exports as an image

The interesting part

  • Screen-to-canvas coordinate conversion under an active transform
  • Zoom that stays anchored to the pointer rather than the origin
  • Exporting a region of an unbounded canvas

Once it works

  • Add grouping and alignment guides
  • Add colour extraction from dropped images
  • Add multiplayer editing

Suggested stack

reacttypescripttailwindcanvas-apilocalstorage

Track it