Figma Guide for Developers

Figma is a cloud‑based design tool that many development teams use to turn UI mockups into production code. This guide walks developers through the essential steps: setting up a Figma account, mastering core workflows, applying advanced patterns, and avoiding common pitfalls. By the end you will know how to inspect assets, export clean SVGs, and keep design hand‑off fast and error‑free.

Table of Contents

1. Setup – Getting Started with Figma

1.1 Create a Free Account

Visit figma.com and sign up with Google or email. The Starter plan allows three projects, unlimited viewers, and 30 days of version history.

1.2 Install the Desktop App (Optional)

The desktop client runs on Windows, macOS, and Linux. It reduces latency when working with large files. Download size is ~150 MB.

1.3 Join a Team

Ask your design lead for an invitation link. Once you accept, you will see a “Team” list on the left sidebar. Permissions are:

1.4 Configure Preferences for Developers

Go to Menu → Settings → Preferences and enable:

2. Core Workflows – Inspect, Export, and Code

2.1 Inspect Panel Basics

Select any layer and open the right‑hand Inspect tab. You will see:

Copy the CSS with a single click. Example output for a button:

.btn{background:#0069ff;color:#fff;padding:0.5rem 1rem;border-radius:4px;}

2.2 Exporting Assets

Mark the element as a component, then set export settings:

For icons, always choose SVG and tick Outline text to avoid missing fonts.

2.3 Using Design Tokens

Many teams store colors, spacing, and typography in a shared .json file. In Figma, open Assets → Library → Tokens and click Copy JSON. Paste into your project’s design‑tokens.js and reference it in CSS‑in‑JS or Tailwind config.

2.4 Version Control Integration

Figma files are live, but you can export a .fig file for backup. To sync with Git:

  1. Install the “Figma Git Sync” plugin.
  2. Run Export → .fig and commit the file.
  3. When a teammate updates the design, pull the latest .fig and open in Figma.

3. Advanced Patterns – Auto‑Layout, Variants, and Plugins

3.1 Auto‑Layout for Responsive UI

Auto‑Layout mimics CSS flexbox. Select a frame, click + Auto‑Layout, and set:

When you add a new button, the layout updates automatically—no need to adjust positions manually.

3.2 Component Variants

Variants replace multiple components with a single master. Create a button component, then click Add variant. Define properties such as:

In the Inspect panel, the generated CSS includes a data-variant attribute you can target in your stylesheet.

3.3 Useful Plugins for Developers

PluginPurposeFree / Paid
HTML to FigmaImport static HTML snippets as layers.Free
FigmotionAdd simple keyframe animations directly in Figma.Free
Design LintDetect missing tokens, unaligned layers.Free
Figma TokensSync design tokens to JSON, SCSS, or Android XML.Free
Zeplin ExportExport frames to Zeplin for teams that still use it.Paid

3.4 Prototyping for Developers

Use Prototype mode to create clickable flows. Set On Click → Navigate To and add Overlay for modals. When you share a prototype link, developers can see interaction timing (ms) which helps estimate animation effort.

4. Figma vs. Competitors – Quick Feature Comparison

FeatureFigmaSketchAdobe XD
Cloud CollaborationReal‑time editing, unlimited viewersRequires third‑party pluginsCoediting introduced 2022, limited free tier
Auto‑LayoutNative, flex‑likePlugin‑onlyBasic constraints only
Component VariantsBuilt‑in, unlimitedSymbol overrides onlyComponent states limited
PlatformWeb + Desktop (Windows/macOS/Linux)macOS onlyWindows & macOS
Free Plan Limits3 projects, 30‑day history30‑day trial, then paid1 active shared prototype
Export SVG QualityClean, outline text optionOften includes hidden groupsSometimes adds extra xmlns

5. Common Mistakes Developers Make

5.1 Copying Pixel Values Without Context

Designs use density‑independent pixels (dp). A button set to 44 dp on iOS may appear too small on Android. Always check the Resize setting in the Inspect panel.

5.2 Ignoring Auto‑Layout Constraints

When a frame is not set to Fill container, exported CSS will use fixed widths. Convert frames to Auto‑Layout before copying CSS to avoid hard‑coded sizes.

5.3 Exporting Raster Images for Icons

SVG is lossless and scales with CSS. Exporting PNG icons forces you to manage multiple resolutions. Use SVG whenever the icon contains only vector paths.

5.4 Overlooking Color Mode Variants

Many designs include Light and Dark mode variants. Developers often copy only the Light colors. Check the Assets → Library → Themes section for alternate palettes.

5.5 Relying on Figma’s “Copy as HTML”

The generated markup is a flat div structure with inline styles. It is not production‑ready. Use the CSS from the Inspect panel and recreate semantic HTML yourself.

6. FAQ

Do I need a paid Figma plan to collaborate with developers?

No. The free Starter plan lets you share files, comment, and copy CSS. For larger teams you may need Professional, but it is not required for basic collaboration.

How can I inspect CSS values in Figma?

Select a layer, open the right‑hand Inspect panel, and copy the CSS, iOS, or Android code. Values are ready to paste into your codebase.

What is the best way to export SVG icons from Figma?

Mark the icon as a component, right‑click → Export → Set format to SVG, and tick ‘Outline text’ to avoid font dependencies.

Can I use Figma plugins to generate code?

Yes. Plugins like “HTML to Figma” or “Figmotion” add code‑export features, but they rarely replace a hand‑crafted solution. Use them for quick prototypes.

Why does my layout shift when I copy frames from Figma to React?

Figma frames include absolute positioning. Convert them to flex or grid in code, or use the auto‑layout feature in Figma to generate responsive constraints.

With this guide you should feel comfortable opening a Figma file, inspecting assets, exporting clean code, and avoiding the typical traps that slow down development. Keep the workflow tight, use auto‑layout, and let designers and developers stay in sync.

Get tools like this in your inbox
One useful tool per week. No spam. Unsubscribe anytime.