SOP · Design & Engineering
Design–code workflow
How we build landing pages. Code is the source of truth. Figma is the review and annotation layer. This process eliminates Figma-to-code translation drift and keeps feedback cycles tight.
build
Brief
Slack / doc
HTML built
Claude Code
Deploy preview
Vercel
sync
Import to Figma
html.to.design plugin
Design reviews
Live page + Figma annotations
revise
Pull Figma feedback
Comments + edits
Update HTML
Claude Code
Redeploy
Vercel
01
Submit a brief
Marketing
Describe what the page needs: target audience, key sections, copy, and any reference pages to match. Drop the brief in Slack or as a doc. The more specific the brief, the fewer revision cycles.
02
HTML is built and deployed
Engineering
Claude Code builds the page as production HTML and deploys it to a live Vercel preview URL. This is the real page — not a mockup. It's responsive and functional from the first draft.
03
Page is imported into Figma
Engineering
Using the html.to.design Figma plugin, the live URL is imported as editable Figma layers. A comment with the live preview link is pinned to the frame. This gives design real layers to work with — not a flat screenshot.
04
Design reviews the live page
Design
Open the live Vercel URL in your browser. This is what you're reviewing — the real page, with real responsive behavior, real fonts, real interactions. Check it at desktop and mobile widths. The Figma frame is your annotation canvas, not the source of truth.
05
Leave feedback in Figma
Design
Two ways to give feedback — use whichever is faster:

Option A: Comments. Drop Figma comments on the frame pointing to specific areas. Be specific: "Increase spacing between hero and trust bar to ~40px" is better than "needs more breathing room."

Option B: Direct edits. Move, resize, or restyle elements directly on the Figma layers. Change copy, swap colors, adjust spacing. Engineering will pull the updated design and apply changes to the HTML.
06
Feedback is pulled and applied
Engineering
Engineering reads Figma comments and inspects any design edits directly from the Figma file — no handoff doc needed. Changes are applied to the HTML and redeployed. The Figma frame is re-imported if needed for the next round.
07
Final sign-off
Design + Marketing
Review the updated live URL. If approved, the page goes to production. Resolve all Figma comments to keep the file clean.
Why this works
  • HTML is the source of truth. The deployed page is the canonical artifact. Figma is for review and communication, not for generating code.
  • Review the real thing. Always review the live Vercel URL in your browser. The Figma frame is an editable reference — it may not capture every responsive behavior or interaction.
  • Be specific with feedback. Pixel values, color codes, and exact copy changes land in one cycle. Vague notes ("make it pop") create extra rounds.
  • Comments or edits — both work. Quick notes go in Figma comments. Larger layout or styling changes can be made directly on the Figma layers. Engineering reads both.
  • One round is the goal. A clear brief and specific feedback should get most pages to final in two deploys — first draft and one revision.
When you get a review request
1. Open the live URL from the Figma comment (or Slack)
2. Review the page in your browser at desktop and mobile widths
3. Go to the Figma frame to leave your feedback
4. Use comments for quick callouts, direct edits for layout or styling changes
5. Tag the engineering channel when your review is done
What makes good feedback
Specific: "Move CTA 24px higher" or "Change heading to #fff"
Visual: Draw directly on the Figma layers, rearrange elements, update text
Prioritized: Flag must-fix vs. nice-to-have so engineering can batch efficiently
When to start in Figma first
Brand exploration — If design is experimenting with a completely new visual direction and nothing exists yet, start in Figma. Describe the result to engineering and we'll build it.

Asset-heavy deliverables — Social templates, ad creative, and other visual-first outputs where the Figma file IS the deliverable.