A webcam-driven visual workspace
The hand is
the cursor.
Draw, connect, and present on an infinite canvas with bare hands. Point to move, pinch to draw, fist to delete — a webcam is the whole interface.
palm · point · pinch · fist — 21 landmarks per frame, all in-browser
CH 01 · From pixels to structure
A webcam frame becomes a hand.
MediaPipe reads 21 landmarks out of every frame. They leave the flat image and take on depth — this skeleton is all the engine ever sees. No gloves, no markers, no depth camera.
hand landmarker · 21 pts · confidence ≥ 0.5
CH 02 · Signal vs noise
Raw hands shake. The cursor can't.
Every landmark runs through a One-Euro filter: heavy smoothing at rest so webcam jitter dies, light smoothing in motion so the cursor never lags. The paper ships β = 0.007 for pixel space — normalized coordinates needed it three orders of magnitude hotter.
CH 03 · The decision
A pinch is a contract.
Engage below 0.035. Release above 0.075. The band between is hysteresis: mid-stroke jitter can spike across the engage line and nothing breaks — only a deliberate release crosses the whole band.
drag the needle — the latch lets go at a different line than it engaged. that asymmetry is the whole trick.
CH 04 · Ink
…and the pinch lands as ink.
Everything downstream is a real canvas: strokes, shapes, nodes and edges, a radial menu, present mode. The same grammar you just scrolled through — plus an optional AI command bar.
dwell 15 frames ≈ 0.5 s before anything destructive commits
Raise a hand.
No install, no account. The webcam feed never leaves your machine.
every number on this page is real — engage 0.035 · release 0.075 · β 6.5 · docs/gesture-contract.md