Skip to main content
Once your design system exists, most design work is a short prompt away in Modaal. This page gives you the vocabulary to describe what you see, plus copy-paste prompts for the checks non-designers most often miss. Every prompt here runs with the Plan toggle off. Prompting agents for native mobile UI covers the same ground against iOS and Android interface conventions.

Learn the vocabulary for describing what you see

  • “more breathing room / airier” → bigger gaps
  • “tighter / denser” → smaller gaps
  • “the padding inside the card” → space between a card’s edge and its contents
  • “the margin” → space from the screen edge to the content
  • “the gap / the rhythm between items” → space between repeated elements
Useful sentence: “Increase the vertical rhythm between sections by one step on the spacing scale.”
iOS uses a fixed type scale. You rarely need the numbers, but here they are so you can point at a role:
  • 34pt — large title (the big screen title)
  • 22pt — title
  • 17pt — body / headline (default reading size; anything smaller starts to look like a website)
  • 15pt — subheadline
  • 13pt / 11pt — caption / metadata (timestamps, labels)
The words iOS uses, light to heavy: regular → medium → semibold → bold. “Make the amount semibold so it stands out from the label.”
  • accent / primary — the interactive color (buttons, active tab, selection)
  • surface / background — the color behind content (card vs screen)
  • ink / text-primary / text-secondary — text colors: primary for headings, secondary for supporting text
  • semantic roles — success, warning, error, plus your app’s own named roles
  • corner radius — how rounded corners are (“softer corners” / “sharper corners”)
  • elevation / shadow / depth policy — whether things float on shadows, sit on surfaces, or use gradients. Your system should pick one policy; point at it: “we use surfaces, not shadows — remove that drop shadow.”
  • tap target — the invisible touchable area (must be at least 44×44pt)
  • pressed / disabled state — how something looks when tapped or unavailable
  • hairline — a 1px divider line
Not sure what to ask for? Use this:

Reuse values and components

Extract repeated things into shared components:
Before building anything new, reuse what exists:

Accessibility — text contrast

For dots, icons, and other non-text elements:

Check every tap target is at least 44×44pt

Anything tappable must be at least 44×44pt, even if the visible icon is smaller.
Quick version for a single element: “Is this chevron’s tap target at least 44pt? If not, pad it to 44 without moving the icon.”

Find and fix inconsistencies across screens

The catch-all “does this all feel like one app” review:
Follow-up once you’ve picked the standards:

Check for hardcoded values

“Hardcoded” means a number or color typed directly into a screen instead of pulled from the token file. It’s the #1 source of drift — it looks fine today and breaks consistency the moment you restyle.
Your DesignTokens.swift is the source of truth. A restyle should be a one-file edit. Every hardcoded value is a place that edit will silently miss.

Prompt for animation and motion

Describe motion by feel and purpose; the agent picks the spring, duration, and easing. The vocabulary: spring vs ease, snappy vs gentle, duration, and transition (how something enters/exits). Describing a motion you want — no jargon needed:
Iterating on a motion that’s not quite right:
Respect the accessibility setting:

Things non-designers forget

Dark mode — half your users:
Empty / loading / error states — screens aren’t always full of data:
Icon consistency:

The big audit — everything at once

Last modified on September 8, 2026