Skip to content

Make the product interaction the visual proof

A Motion guide for coding agents. Also covers animate product UI, demo a click, simulated cursor, type into an input, scroll a product screen, zoom into UI, and 1 more.

Show all 7 aliases

animate product UI, demo a click, simulated cursor, type into an input, scroll a product screen, zoom into UI, product surface video

The viewer should see the product do the thing the copy promises.

Build one action per scene

A product moment has four phases:

  1. Orient: show the relevant surface and where the action will happen
  2. Act: move the cursor, type, click, drag or scroll
  3. Respond: let the interface change visibly
  4. Hold: keep the result still long enough to understand

Do not animate several competing controls at once. Direct attention with framing, contrast and motion before adding a callout.

Cursor and target

  • Use a deterministic path and keep the cursor inside the product surface's transform
  • The control reacts on the same frame as the click. A click pulse without a UI response reads as fake
  • Let typed text finish before submitting
  • Use a step change for terminal or log scrolling when real software would jump; do not spring every movement
  • Show focus, pressed, loading and success states when they carry the result

Product surface

  • Prefer the real component when it renders safely in Remotion
  • Use a faithful simplified surface when the real app depends on network, authentication or unstable data
  • Crop browser and OS chrome unless that chrome explains the task
  • Keep the active UI large and high contrast. A distant floating window is not proof
  • Put real-feeling copy in the surface. Do not ship Scene A, TASK-1234 or lorem text

Camera

Use the camera to preserve context, not to add constant movement. A subtle push can introduce a surface. A focused zoom can connect a control to its result. Stop the camera before the viewer must read small UI.

Use this guidance in your coding agent

Install the Better Design MCP once. Your agent then loads this page with one call.

get-motion-guide({ topic: "product-interactions" })
claude mcp add --scope user better-design --transport http https://better-design.com/api/mcp --header "Authorization: Bearer <YOUR_API_KEY>"
Browse related design systems