Back to Workshop Hub

Figma → Lovable

A practical guide to translating your Figma designs into effective Lovable prompts. No code required — just clear communication.

⚡ The TL;DR

  1. Look at your Figma design and identify the layout pattern, colors, typography, and components
  2. Describe what you see using design vocabulary (not code)
  3. Be specific about colors (hex), sizes (px), spacing, and hierarchy
  4. Iterate — start broad, then refine with targeted follow-up prompts

The Mindset Shift

You're not exporting pixels — you're describing intent. Lovable doesn't read your Figma file directly. Instead, you translate your design decisions into natural language prompts. Think of it as explaining your design to a skilled developer sitting next to you.

Describe what the user sees and does, not how to code it
Reference design patterns by name ('bento grid', 'split hero', 'masonry gallery')
Be specific about hierarchy — what's most important on the page?

Translating Layouts

Look at your Figma layout and identify the structure before writing a prompt. Name the pattern, describe the grid, and specify proportions.

"Two-column layout with image on the left (60%) and text on the right (40%)"
"Bento grid with one large hero card spanning 2 columns and 4 smaller cards below"
"Full-width hero section, then a 3-column card grid with equal spacing"
"Sticky sidebar navigation on the left, scrollable content area on the right"

Example Prompt

Create a landing page with a full-width hero section featuring a large heading, subtitle, and two CTA buttons. Below that, add a 3-column feature grid where each card has an icon, title, and description. Use 24px gap between cards.

Communicating Color & Style

Don't assume Lovable knows your brand colors. Be explicit about your palette, and reference the mood or style you're going for.

Include hex codes: "Primary: #ff6b6b, Background: #0a0a1a, Text: #f5f5f5"
Reference a vibe: "dark mode, luxury feel" or "bright, playful, startup energy"
Mention specific effects: "glassmorphism cards", "subtle shadows", "gradient accents"
Specify dark vs light sections for visual rhythm

Example Prompt

Use a dark background (#0f0f1a) with coral (#ff6b6b) as the primary accent color. Cards should have a frosted glass effect with subtle borders. Add a gradient glow behind the hero heading.

Typography Decisions

Your Figma file has specific font choices and sizes. Translate those into your prompts — font pairing, weight, and scale matter.

Name your fonts: "Use Space Grotesk for headings and DM Sans for body text"
Specify sizes for key elements: "Hero title at 72px, section headings at 36px, body at 16px"
Mention weight and style: "Bold headings, regular body, italic for quotes"
If you don't have specific fonts, describe the feel: "modern sans-serif, techy" or "elegant serif"

Example Prompt

Use Inter for all text. Hero heading should be 64px bold, section titles 32px semibold, body text 16px regular with 1.6 line height. Use muted gray (#6b7280) for secondary text.

Describing Components

Figma components map to UI components. Name them clearly and describe their states, content, and behavior.

"Card with image on top, title, 2-line description, and a tag badge in the corner"
"Navigation bar with logo left, 5 links centered, and a CTA button on the right"
"Testimonial section with avatar (48px circle), name, role, and a quote in italics"
Mention interactive states: "Button changes color on hover, cards lift with shadow on hover"

Example Prompt

Add a testimonial carousel with 3 cards visible at once. Each card has a circular avatar (48px), person's name in bold, their role in gray below, and a quote in italics. Include left/right arrow buttons and dot indicators.

Spacing & Alignment

Spacing is what separates good design from great design. Lovable respects spacing instructions, so be specific.

Use consistent units: "32px padding, 24px gap between cards, 16px internal padding"
Reference alignment: "Center-aligned hero text, left-aligned body content"
Mention responsive behavior: "Stack to single column on mobile, maintain 16px side padding"
Specify max-width: "Content area maxes out at 1200px, centered on larger screens"

Example Prompt

The page should have a max-width of 1200px centered on screen. Use 64px vertical spacing between sections, 24px gap in card grids, and 32px padding inside cards. On mobile, stack everything single-column with 16px horizontal padding.

Working with Images

You can't paste Figma images directly, but you can describe what images should look like and where they go.

Describe placement: "Full-bleed background image behind the hero with a dark overlay"
Specify aspect ratios: "16:9 image cards" or "Square avatars with rounded corners"
Use placeholder services: mention using placeholder images initially
For screenshots, describe the content: "Show a dashboard mockup in the browser frame"

The Iteration Loop

Your first prompt won't be perfect — and that's fine! The real workflow is prompt → review → refine. Here's how to iterate effectively.

Start broad, then zoom in: layout first, then colors, then details
Use screenshot references: "See the current version — now change X"
Make small, targeted changes: "Move the CTA button to the right" instead of re-describing everything
Reference what you like: "Keep the header exactly as is, but change the footer to..."

Example Prompt

The hero section looks great — keep it. Now update the features section: change from 3 columns to a 2x2 grid, make the icons larger (32px), and add a subtle background color (#f8f9fa) to the whole section.

Want to go deeper into design consistency?

Design Systems + Lovable →

Ready to try it?

Open Lovable