# The flow (https://getreely.co/docs/directing/flow)

> Direct which screens appear in your app video, in what order, and how long each one holds — all in plain English.

The flow is the shot list: which screens the video walks through, in what order, and how long it rests on each one. It is the one thing worth being explicit about — everything else is a look you can change later.

## Name the journey

Say where it starts and where it ends. The agent traces the path between them through your real navigation, including the interstitial screens you forget about — permission sheets, confirmations, empty states.

**Prompt:** `Start at the empty cart and end on the order confirmation.`

> Every screen change is its own beat. A three-slide carousel is two swipes, not one — if a middle screen never appears in the video, that is the thing to point at.

## Cut what does not earn its place

- “Skip the login — start signed in.”
- “Don’t show the cookie sheet.”
- “Cut everything before the checkout button.”

## Control the pacing

Each beat has a moment before the action and a moment after it, so the eye can find the control and then read the result. Adjust either in words.

| You want | Say |
| --- | --- |
| More time on a result | “Hold longer on the confirmation.” |
| Less dead air | “Tighten the pauses, keep it moving.” |
| A calmer overall read | “Slow the whole thing down about 20%.” |
| A specific length | “Keep it under 15 seconds.” |

A screen with its own animation — a list staggering in, a sheet springing up — is held long enough for that animation to finish before the next beat starts. If something feels clipped, say so and the hold grows.

## Typing, scrolling, gestures

Text is typed into the real field, scrolls glide at a readable speed and can stop where you want, and swipes and long-presses play with their touch indicator.

**Prompt:** `Type “Weekend in Lisbon” into the search field, then scroll the results slowly to the third card.`

> Forms gate their own buttons. If a submit button looks dead in the video, it is because a required field was never filled — ask for the field to be filled first.
