Web Design Fundamentals · Spring 2026 · Week 9
Once your P4 Figma is finished, use an AI coding agent (opencode, Claude Code, or Codex CLI) wired up to the Figma MCP to cut it into a semantic HTML5 scaffold and submit the result. This is a checkpoint — the full styled landing page is still due via the existing P4 Code submission.
You designed it in Figma. The code shouldn't feel like a mountain — it should feel like a translation. An AI coding agent wired up to the Figma MCP reads your file directly through the API and writes the semantic HTML5 scaffold for you, with the required P4 IDs and classes baked in. Use whichever agent you have access to: opencode (free, open source), Claude Code (if you pay for Claude), or Codex CLI (if you pay for ChatGPT) — all three speak MCP.
The catch: AI can't read what isn't there. If your Figma layers are named Frame 47 or Rectangle 12, the cut-up will be slop. Finishing your Figma IS doing your code.
A four-step workflow with the exact prompts to paste, the required IDs/classes from the brief, and a "what the AI gets wrong" checklist. ~45 minutes self-paced.
https://code-and-design.org/tutorials/p4-cutup-figma/Your Figma should have:
Hero, Feature Card, Nav Link) — not Frame 47.Submit two things to this assignment:
index.html — the generated semantic scaffold from the cut-up workflow. CSS is not graded yet (that's the P4 Code submission). Upload the file or paste a link to your repo / Netlify / GitHub Pages.Structural correctness (60%) — The required semantic tags, IDs, and classes from the P4 brief are all present and correctly used:
<header id="header"> with id="header-img" and <nav id="nav-bar">class="nav-link"<main> with five sections: #hero, #video, #features, #data, #contact<article> tags for each feature card inside #featuresid="data-table", using <thead> + <tbody><label>/<input>, type="email", and id="submit"alt text on every imageAI literacy reflection (40%) — The prompt log shows you read the AI's output critically. The "what it got wrong" entry is specific (names the element, the failure, the catch, and the fix), not generic.