Guide

How AI styling works under the hood

ScreenFramed's AI features analyse your screenshot and map visual signals to styling parameters. Here's what happens when you pass ai_style: true, ai_copy: true, or ai_brand: true.

Step 1 — Visual analysis (ai_style)

  • The API captures a 400x300px thumbnail of the target URL and sends it to Claude Vision. The model classifies the screenshot across four dimensions: page type (landing, dashboard, docs, e-commerce, etc.), visual tone (dark, light, colorful, minimal), brand color signals (dominant hue, saturation, contrast), and audience (consumer, developer, enterprise, creative).
  • These signals map to a composition preset — background gradient, shadow type, padding, corner radius. A dark SaaS dashboard gets a midnight preset with glow shadow. A colorful e-commerce page gets a complementary gradient with soft shadow.

Step 2 — Copy generation (ai_copy)

  • The API fetches the page's metadata: <title>, <h1>, <meta description>, and Open Graph tags. Claude generates a headline (≤60 chars, punchy, not a copy of the page title), a subtitle (≤120 chars), and an optional badge label.
  • When ai_style is also enabled, fonts are matched to the detected page type — a docs page gets a clean sans-serif, a creative portfolio gets something more expressive.

Step 3 — Brand integration (ai_brand)

  • When you pass ai_brand: true, the API calls ExtractVibe to pull real brand data from the target domain — primary/secondary colors, typography, dark mode preference, voice and tone.
  • Extracted fields map directly: colors.primary → gradient stop 1, colors.secondary → gradient stop 2, typography.primary_font → default title font, dark_mode → background preset selection.
  • Brand profiles are cached per domain for 7 days. If the domain was onboarded during signup, the brand data is already cached and the +2 credit cost is waived.

Credit costs

  • ai_style — +2 credits.
  • ai_copy — +1 credit.
  • ai_brand — +2 credits (waived if cached).
  • ai (full bundle) — +4 credits.
  • prompt (natural language) — +1 credit.