One long prompt asking for a whole feature usually produces something that works and looks nothing like what you imagined. We use a short loop instead. Here it is with a real example: the learner profile page.
flowchart LR B["Brief + references"] --> O["Options or plan"] O --> K["Build"] K --> L["Look: screenshot at 3 widths"] L --> R["Refine: 1-3 corrections"] R --> L L --> S["Ship"] %% step B: Outcome, constraints and a picture of what you like. %% step O: Three mock-ups for visual work, a written plan for logic. %% step K: Claude builds the chosen option in the real code. %% step L: Claude opens the page in a headless browser and sends screenshots; you look too. %% step R: Name what is wrong in one message, not one per message. %% step S: Commit only when you have seen it.
1. Brief with references
We wrote: "When a learner clicks their avatar, show a profile page: level, rank, streak, badges, track progress. Only data the site already stores. Show three designs first." For visual work a reference image says more than adjectives. If you like a site, take a full-page screenshot (Chrome DevTools → Ctrl+Shift+P → "Capture full size screenshot"), shrink it to a few hundred KB, put it in the project folder and point Claude at it with @.
2. Options before code
Claude produced one HTML file with three designs: a dashboard, a game-style card with level and XP, and a "learning passport". Choosing between three real pages took two minutes; describing the one we wanted would have taken twenty.
3. Build the chosen one
"Build design B, with an avatar picker" was enough, because the brief and the mock-up were already in the conversation.
4. Look
The request always ends with "check it at desktop and phone width, light and dark". Claude ran a headless browser, took screenshots and looked at them. We looked too, and saw that the left column was dark in light mode.
5. Refine in one message
Collect what is wrong and send it together: "Left column should follow light mode; badges in two columns on phones; don't replay the animation when I change avatar." Three fixes, one round.
What makes the loop work
- Small steps you can see. A change you can screenshot is a change you can judge.
- Stop early. If the first screenshot is wrong in direction, say so before the details are polished.
- Save the good brief. A brief that worked is a template for the next page.