← Portfolio
Short case study · Web · Experiment

An input with no buttons and no edges.

Every laptop has a camera and almost nothing treats it as a control surface. This was an experiment in what that interface has to do differently.

01The problemShort case study

Touch and click are solved problems: the target is visible, the press is felt, the result is immediate. A gesture has none of that. There is no edge to aim at, no click to confirm, and no way to tell whether nothing happened because you moved wrongly or because the camera never saw you.

You move??nothing happens·and you never learn why
02Three decisionsWhat I chose, and why
01

Render the machine seeing you

The hand skeleton is drawn live over the video — 21 tracked points, joints connected, updated every frame. Before any feature works, you can see that you are being tracked.

WhyInvisible input needs visible perception. If the user can see the tracking, a failed gesture becomes information instead of a mystery.
02

Separate what persists from what does not

Three stacked canvases: the skeleton is cleared every frame, drawn strokes persist, and effects live on their own layer. The video sits underneath, mirrored so movement matches intuition.

WhyEphemeral feedback and permanent output are different jobs. Sharing one surface would force a compromise that hurts both.
03

Give the same input several personalities

One tracker, five modes — playground, air draw, pop bubbles, emoji rain, and a repulsor. The mode bar is the only chrome on screen.

WhyA new input is learned by playing, not by reading. Several small toys teach the gesture vocabulary faster than one serious demo.
03OutcomeWhere it landed
Runs anywhereA single HTML file. Chrome, Edge, Safari or Firefox, on desktop or phone. No install, no build step.
Nothing uploadedFrames are processed on-device in the browser. The camera stream never leaves the machine.
DownloadablePublished in the Lab — take the file and open it yourself.
Gesture Fun Playground with its five modes
Five modes · playground · air draw · pop bubbles · emoji rain · repulsor

Open it in the Lab →