Tools & Workflow

Figma for Developers

Learn the Figma fundamentals every developer needs — frames, auto layout, components, AI features, and the developer handoff workflow.

Figma for Developers: The 20% That Matters

You do not need to become a designer to use Figma effectively. You need to understand four concepts: Frames, Auto Layout, Components, and Styles.

Frames

Frames are Figma's equivalent of HTML containers (divs, sections, article). Every screen design lives in a Frame. Frames have:

  • Fixed dimensions (e.g., 1440 × 900 for desktop, 375 × 812 for iPhone)
  • Clip content (like overflow: hidden)
  • Background color
  • Border radius, shadow

Select the Frame tool (F) and draw a rectangle to create a frame. Nest frames inside frames to create complex layouts — just like nested divs.

Auto Layout

Auto Layout is Figma's implementation of CSS Flexbox. Apply it to a Frame or Group to control how children arrange:

  • Direction: Horizontal (row) or Vertical (column)
  • Gap: Space between children (like gap in CSS)
  • Padding: Internal spacing (like padding in CSS)
  • Alignment: Start, center, end, space-between (like justify-content and align-items)
  • Wrap: Allow children to wrap to next line (like flex-wrap)

Keyboard shortcut: Select a frame, press Shift+A to add Auto Layout.

Components

Components are Figma's equivalent of React components. Create a component from any element, then place instances throughout the design. When you update the master component, all instances update.

Variants: A component can have multiple variants (like prop combinations in React). A Button component might have variants for: Primary/Secondary/Ghost × Default/Hover/Disabled.

To create a component: Select elements, right-click → "Create Component" (or Ctrl+Alt+K / Cmd+Option+K).

Styles

Styles are named presets for colors, typography, and effects — equivalent to CSS custom properties (variables). Create a "Primary Background" color style with value #0A0A0F, apply it to multiple elements, and changing the style updates all instances.

To create a style: Click the style icon in the right panel → "+" to add.

Figma AI Features

First Draft: Type a description in the chat and Figma generates a wireframe or layout in your file. Outputs editable Figma layers, not images.

Make: Select existing design elements and type how to transform them. "Make this more modern" or "Add a dark mode version."

AI text generation: Right-click on text layers → "Fill with AI content" to populate with realistic placeholder text based on context.

Developer Handoff: Reading a Figma File

When a designer shares a Figma file with you:

  1. Inspect mode (click the "Dev Mode" toggle, or press Shift+D): Select any element to see its CSS properties — exact color values, font sizes, spacing, border radius.
  1. Measure spacing: Hover over an element while holding Alt/Option to see the distance to other elements.
  1. Export assets: Select any layer, right-click → "Copy as SVG" or use the Export panel to export as WebP/PNG.
  1. See component props: Click a component instance to see its variant configuration.

Key Plugins for Developers

  • Builder.io: Export Figma designs to React, Angular, or plain HTML code
  • Locofy: Convert designs to React or Next.js components
  • UX Pilot: AI wireframe generator inside Figma
  • Magic Patterns: Text-to-UI components inside Figma

Key Takeaways

  • Frames = containers, Auto Layout = Flexbox, Components = reusable elements, Styles = CSS variables
  • You do not need design skills to read Figma — Dev Mode shows all CSS values on any element
  • Figma AI First Draft generates editable wireframes from text descriptions
  • Components with variants let designers define all states (hover, disabled) in one component
  • The Developer Handoff workflow: inspect CSS values, measure spacing, export assets, copy as SVG

Example

markdown
# Figma Auto Layout → CSS Translation

/* Figma: Horizontal, Gap 16, Padding 12 24, Align center */
.element {
  display: flex;
  flex-direction: row;
  gap: 16px;
  padding: 12px 24px;
  align-items: center;
}

/* Figma: Vertical, Gap 8, Fill container width */
.stack {
  display: flex;
  flex-direction: column;
  gap: 8px;
  width: 100%;
}

/* Figma: Horizontal, Space Between, Align center */
.nav {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
}

/* Reading Figma values in Dev Mode:
   - Colors: hex values, rgba for transparency
   - Typography: font-family, font-size (px), font-weight, line-height
   - Spacing: exact px values for margin and padding
   - Borders: border-radius in px, border color and width
   - Shadows: box-shadow values with exact offsets and blur */
Try it yourself — MARKDOWN