<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" xmlns:googleplay="http://www.google.com/schemas/play-podcasts/1.0"><channel><title><![CDATA[Design AI Stack]]></title><description><![CDATA[The full-stack playbook for designers using AI to grow, build and lead.]]></description><link>https://www.designaistack.com</link><image><url>https://substackcdn.com/image/fetch/$s_!iYnd!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe7002f52-4c57-4d22-8aaf-2be57750e7dc_1200x1200.png</url><title>Design AI Stack</title><link>https://www.designaistack.com</link></image><generator>Substack</generator><lastBuildDate>Sat, 18 Apr 2026 08:03:59 GMT</lastBuildDate><atom:link href="https://www.designaistack.com/feed" rel="self" type="application/rss+xml"/><copyright><![CDATA[Sherizan]]></copyright><language><![CDATA[en]]></language><webMaster><![CDATA[sherizan@substack.com]]></webMaster><itunes:owner><itunes:email><![CDATA[sherizan@substack.com]]></itunes:email><itunes:name><![CDATA[Sherizan]]></itunes:name></itunes:owner><itunes:author><![CDATA[Sherizan]]></itunes:author><googleplay:owner><![CDATA[sherizan@substack.com]]></googleplay:owner><googleplay:email><![CDATA[sherizan@substack.com]]></googleplay:email><googleplay:author><![CDATA[Sherizan]]></googleplay:author><itunes:block><![CDATA[Yes]]></itunes:block><item><title><![CDATA[How I Teach Claude Code My Design Taste So It Never Improvises.]]></title><description><![CDATA[Your Taste Deserves Its Own AI with Claude Code]]></description><link>https://www.designaistack.com/p/how-i-teach-claude-code-my-design</link><guid isPermaLink="false">https://www.designaistack.com/p/how-i-teach-claude-code-my-design</guid><dc:creator><![CDATA[Sherizan]]></dc:creator><pubDate>Tue, 17 Mar 2026 03:11:48 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!giGp!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3e9cd80-50d2-4e09-acdb-c6629933c04e_1305x712.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!giGp!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3e9cd80-50d2-4e09-acdb-c6629933c04e_1305x712.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!giGp!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3e9cd80-50d2-4e09-acdb-c6629933c04e_1305x712.jpeg 424w, https://substackcdn.com/image/fetch/$s_!giGp!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3e9cd80-50d2-4e09-acdb-c6629933c04e_1305x712.jpeg 848w, https://substackcdn.com/image/fetch/$s_!giGp!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3e9cd80-50d2-4e09-acdb-c6629933c04e_1305x712.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!giGp!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3e9cd80-50d2-4e09-acdb-c6629933c04e_1305x712.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!giGp!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3e9cd80-50d2-4e09-acdb-c6629933c04e_1305x712.jpeg" width="1305" height="712" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b3e9cd80-50d2-4e09-acdb-c6629933c04e_1305x712.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:712,&quot;width&quot;:1305,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:327842,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.designaistack.com/i/190155042?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3e9cd80-50d2-4e09-acdb-c6629933c04e_1305x712.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!giGp!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3e9cd80-50d2-4e09-acdb-c6629933c04e_1305x712.jpeg 424w, https://substackcdn.com/image/fetch/$s_!giGp!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3e9cd80-50d2-4e09-acdb-c6629933c04e_1305x712.jpeg 848w, https://substackcdn.com/image/fetch/$s_!giGp!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3e9cd80-50d2-4e09-acdb-c6629933c04e_1305x712.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!giGp!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3e9cd80-50d2-4e09-acdb-c6629933c04e_1305x712.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Anthropic has provided us with the complete guide how to get the most out of Claude Code. This is how I interpret it for my smaller projects where you don&#8217;t need a full fledge design system.</p>
      <p>
          <a href="https://www.designaistack.com/p/how-i-teach-claude-code-my-design">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[Will AI Invent a New Programming Language?]]></title><description><![CDATA[My perspective on the question nobody&#8217;s asking. What if the answer is a design file.]]></description><link>https://www.designaistack.com/p/will-ai-invent-a-new-programming</link><guid isPermaLink="false">https://www.designaistack.com/p/will-ai-invent-a-new-programming</guid><pubDate>Fri, 06 Mar 2026 12:21:35 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!d6lT!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4debe73e-5a5d-4caa-aaa8-71d7c0973f30_2400x1572.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!d6lT!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4debe73e-5a5d-4caa-aaa8-71d7c0973f30_2400x1572.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!d6lT!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4debe73e-5a5d-4caa-aaa8-71d7c0973f30_2400x1572.png 424w, https://substackcdn.com/image/fetch/$s_!d6lT!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4debe73e-5a5d-4caa-aaa8-71d7c0973f30_2400x1572.png 848w, https://substackcdn.com/image/fetch/$s_!d6lT!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4debe73e-5a5d-4caa-aaa8-71d7c0973f30_2400x1572.png 1272w, https://substackcdn.com/image/fetch/$s_!d6lT!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4debe73e-5a5d-4caa-aaa8-71d7c0973f30_2400x1572.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!d6lT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4debe73e-5a5d-4caa-aaa8-71d7c0973f30_2400x1572.png" width="1456" height="954" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4debe73e-5a5d-4caa-aaa8-71d7c0973f30_2400x1572.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:954,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:10428533,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.designaistack.com/i/189817465?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4debe73e-5a5d-4caa-aaa8-71d7c0973f30_2400x1572.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!d6lT!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4debe73e-5a5d-4caa-aaa8-71d7c0973f30_2400x1572.png 424w, https://substackcdn.com/image/fetch/$s_!d6lT!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4debe73e-5a5d-4caa-aaa8-71d7c0973f30_2400x1572.png 848w, https://substackcdn.com/image/fetch/$s_!d6lT!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4debe73e-5a5d-4caa-aaa8-71d7c0973f30_2400x1572.png 1272w, https://substackcdn.com/image/fetch/$s_!d6lT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4debe73e-5a5d-4caa-aaa8-71d7c0973f30_2400x1572.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>I need to be upfront about something before we start.</p><p>I&#8217;m a designer. I&#8217;ve worked on apps serving over 1.9 billion active users at TikTok, 50 million active users at Grab. My coding knowledge stopped at JavaScript. And I&#8217;m writing an article about programming languages.</p><p>That alone should tell you how much has changed.</p><p>Two years ago, I wouldn&#8217;t have had an opinion on this. Now I&#8217;m deep in Figma MCP, Claude Code, and vibe coding workflows and the question of what language things are built in is suddenly very relevant to my work. Not because I&#8217;m writing code. But because the line between designing and coding is dissolving so fast that the distinction might not matter soon.</p><p>Whether that&#8217;s exciting or terrifying depends on the day.</p><h3>The mess under the hood</h3><p>Here&#8217;s something most people outside big tech don&#8217;t realise. The apps you use every day are not built in one language.</p><p>TikTok? Parts Kotlin and Swift for native UI. A custom cross-platform framework called Lynx that ByteDance built internally and open-sourced in 2025 because nothing on the market could handle their complexity. Grab serving 50 million users across Southeast Asia? Similar patchwork. React Native here, native code there, custom bridges connecting everything.</p><p>This is not an exception. This is the norm.</p><p>A single design system, the one we spend months perfecting in Figma has to translate into multiple codebases, multiple languages, multiple rendering engines. And the translation is lossy. Every time. &#8220;Should this spacing be 16px or 20px?&#8221; is a Slack message that has been sent a billion times across the industry, and it exists because design files and code are fundamentally different representations of the same thing.</p><p>So when people talk about &#8220;design to code&#8221; or &#8220;design in code,&#8221; this is the part they&#8217;re skipping. It&#8217;s not just a handoff problem. It&#8217;s a multi-language, multi-platform infrastructure problem that nobody has cleanly solved.</p><p>Which got me thinking. If AI is rewriting how we build software&#8230; will it also rewrite what we build software <em><strong>with</strong></em>?</p><h3>Every era invents the language it needs</h3><p>Quick history, because it matters for what comes next.</p><p>The web needed a scripting language for browsers. Brendan Eich built JavaScript in 10 days in 1995. Mobile needed languages that could talk to hardware. Apple created Swift. Google backed Kotlin. Facebook looked at all of this and said &#8220;what if we could use JavaScript to build native apps?&#8221; and React was born. Machine learning needed something accessible to researchers who aren&#8217;t systems programmers. Python became the default, not because it&#8217;s fast, but because the ecosystem made it frictionless.</p><p>Every time the paradigm shifted, a new language emerged. Facebook invented React. Vercel invented Next.js. The pattern is consistent.</p><p>So here&#8217;s the question. AI is the biggest paradigm shift since the internet. What language or what <em><strong>thing</strong></em> will it invent next?</p><h3>The &#8220;language doesn&#8217;t matter&#8221; argument</h3><p>The numbers are hard to argue with.</p><p>AI writes roughly 30% of Microsoft&#8217;s code and over a quarter of Google&#8217;s, according to their own CEOs. Y Combinator reported that 25% of startups in their Winter 2025 batch had codebases that were 95% AI-generated. Stack Overflow&#8217;s 2025 Developer Survey found 80% of developers using AI coding tools weekly.</p><p>Andrej Karpathy coined &#8220;vibe coding&#8221; in early 2025 the idea of describing what you want in plain English and letting AI handle the implementation. Collins Dictionary named it Word of the Year. By early 2026, Karpathy himself said vibe coding is already pass&#233;. The new paradigm is &#8220;agentic engineering&#8221; you&#8217;re not writing code at all, you&#8217;re supervising agents that write it for you.</p><p>Jensen Huang, NVIDIA&#8217;s CEO, put it even more bluntly: &#8220;It is our job to create computing technology such that nobody has to program and that the programming language is human.&#8221;</p><p>If AI can translate natural language into Python, Swift, Kotlin, or Javascript equally well, then the programming language becomes an implementation detail. Like assembly language. You don&#8217;t think about assembly when you write Python. Maybe soon, you won&#8217;t think about Python when you describe an app.</p><p>There are still new languages emerging like Mojo, built by Chris Lattner (the creator of Swift), reads like Python but performs like C++, heading to 1.0 in 2026. But the bigger story isn&#8217;t any single new language. It&#8217;s the possibility that language choice itself becomes invisible.</p><h3>OK Sherizan. So what does this mean for designers?</h3><p>This is where I have to be honest about two things that are both true at the same time.</p><h4>1) The &#8220;design is dead&#8221; argument is not wrong.</h4><p>I know designers don&#8217;t want to hear this. I don&#8217;t particularly want to write it. But let&#8217;s look at what&#8217;s actually happening.</p><p>PMs and designers at Meta have publicly said they now show working products instead of UI prototypes. Designers are shipping MVPs through AI coding tools before developers even get briefed. Figma&#8217;s stock dropped roughly 85% from its post-IPO peak. Wall Street is calling it the &#8220;SaaSpocalypse&#8221; a trillion-dollar selloff in software stocks driven by fears that AI is eating the workflows these companies were built on.</p><p>Shadcn happened. A component library so well-designed, well-documented and so easy to prompt with that people started building dashboards, landing pages, and full interfaces directly with shadcn components with no Figma file needed. You describe what you want, AI generates production-ready React with shadcn, Tailwind, and Next.js. It looks good. It works. No designer touched it. I&#8217;m a huge fan of v0 and what Vercel has done for vibecoding.</p><p>Then frontier models got scary good. You can one-shot a full interactive dashboard with Claude Opus 4.6 or Gemini Pro. Not a mockup. Not a prototype. A working component with real interactions, real state management, real functionality. The kind of thing that used to take a designer days in Figma and a developer weeks to implement done in literally minutes by someone who never opened a design tool.</p><p>There are reports that programmer employment in the US fell 27.5% between 2023 and 2025. The squeeze isn&#8217;t just on developers. Entry-level design work, the screen-by-screen production that used to be someone&#8217;s first job is exactly the kind of task AI automates first.</p><p>If you&#8217;re a designer and you&#8217;re not at least a little nervous, you&#8217;re not paying attention.</p><h4>2) Something interesting is happening at the edges.</h4><p>At the same time that people are declaring design dead, a new category of tools is emerging that suggests the opposite.</p><p>Pencil.dev calls itself &#8220;Design Mode for Cursor.&#8221; It&#8217;s a Figma-like canvas that lives inside your IDE. Your design files sit in your Git repo. You design visually, AI generates the underlying React. Or you prompt AI, and it designs visually on the canvas. The direction goes both ways.</p><p>Paper.design renders every element as real HTML and CSS. No conversion step. You design with real flexbox layouts, real CSS properties, real font rendering. Right-click any element &#8594; Copy as React. They raised $4.2M from Accel, and their thesis is interesting: the canvas of the future IS code, you just shouldn&#8217;t have to know that.</p><p>Figma launched &#8220;Code to Canvas&#8221; with Anthropic that generates an interface in Claude Code, say &#8220;Send this to Figma,&#8221; and it lands as fully editable design layers. Plus Figma Make, Code Connect linking components to production code, and MCP integrations letting AI agents read and write to Figma files directly.</p><p>These tools aren&#8217;t treating design as a step before code. They&#8217;re treating design as code. Or code as design. The distinction is breaking down.</p><p>And Figma&#8217;s own State of the Designer 2026 report shows something that complicates the &#8220;design is dead&#8221; narrative: 89% of designers say they&#8217;re working faster with AI. 91% say AI tools actually improve their designs. Designers leaning into AI are 25% more likely to say they&#8217;re satisfied at work.</p><p>So which is it? Is design dying? Or is it evolving into something more powerful?</p><p>I think the honest answer is: both. At the same time. For different people.</p><h3>A &#8220;what-if&#8221; I can&#8217;t stop thinking about</h3><p>I want to be careful here. This is not a prediction. This is a thought experiment. Because I think it&#8217;s worth exploring even if it turns out to be wrong.</p><p>What if the next programming language isn&#8217;t a language at all? What if it&#8217;s a design file?</p><p>A designer <a href="https://medium.com/@iz.iuqo/figma-isnt-a-design-tool-anymore-333b3c626296">izaias</a> described Figma as &#8220;logic wearing a canvas costume.&#8221; And he&#8217;s not wrong. Every design is JSON. Every component is a node. Auto layout is flexbox. Constraints are code. We&#8217;ve been programming all along, we just called it designing.</p><p>Paper.design&#8217;s canvas renders real HTML/CSS. Pencil.dev stores designs as JSON. Figma&#8217;s Code Connect links components to production code. Shadcn gives you a component system that AI can compose into anything.</p><p>So here&#8217;s the <em>what-if</em>. </p><div class="pullquote"><p>What if a design system, not the Figma library we know today, but a next-generation, language-agnostic representation of an interface becomes the thing AI compiles from? You design the interface. You define the interactions. You set the tokens, the spacing, the hierarchy. </p></div><p>And AI handles everything underneath like choosing Swift for iOS, Kotlin for Android, React for web, C++ for the performance layer, building the bridges between all of them automatically.</p><p>That messy multi-language architecture at TikTok and Grab? It disappears. Not because someone invented a universal language. But because the design file became the universal specification, and AI figures out the compilation.</p><p>Design as the last programming language.</p><p>Now, hold on. I can already hear the objections. And they&#8217;re valid.</p><p>This assumes AI gets good enough at the translation. Right now, it isn&#8217;t. Vibe-coded apps have <a href="https://www.coderabbit.ai/blog/state-of-ai-vs-human-code-generation-report">1.7x more major issues</a> than human-written code according to a CodeRabbit analysis. Security vulnerabilities are <a href="https://www.theregister.com/2025/12/17/ai_code_bugs/">2.7x higher</a>. A Lovable analysis found <a href="https://www.semafor.com/article/05/29/2025/the-hottest-new-vibe-coding-startup-lovable-is-a-sitting-duck-for-hackers">170 out of 1,645 apps</a> had data exposure issues. The gap between &#8220;looks right&#8221; and &#8220;works at scale&#8221; is enormous.</p><p>It also assumes design can encode enough information to replace code. Today&#8217;s design files don&#8217;t capture business logic, state management, error handling or the thousand edge cases that make software actually work. A beautiful Figma file tells you nothing about what happens when the API fails at 3am.</p><p>And it assumes the industry will converge on a standard representation. Figma files are proprietary. Paper.design uses its own format. Pencil uses .pen files. We can&#8217;t even agree on design tokens, let alone a universal compilation target.</p><p>So yeah. Maybe this is naive. Maybe design files as programming languages is a fantasy that ignores how software actually works at scale.</p><p>But.</p><p>Two years ago, the idea that a designer could one-shot a working dashboard by describing it to an AI was also a fantasy. And here we are.</p><h3>Where this actually leaves us</h3><p>I don&#8217;t know if design is the last programming language. I don&#8217;t know if programming languages will become invisible. Nobody does. Anyone who tells you they know exactly how this plays out is selling you something.</p><p>What I do know is this.</p><p>The old workflow aka design in Figma, hand off to developers, argue about spacing in Slack, ship something that doesn&#8217;t match the mockup <em>is dying</em>. That part isn&#8217;t controversial.</p><p>What replaces it is up for grabs. Maybe it&#8217;s designers coding directly. Maybe it&#8217;s AI agents that make the design-to-code gap irrelevant. Maybe it&#8217;s new tools like Paper and Pencil that merge the two entirely. Maybe it&#8217;s something we haven&#8217;t seen yet.</p><p>For developers: if programming languages become an implementation detail handled by AI, then the value shifts to systems thinking, architecture, and knowing what to build, not which syntax to build it in. Karpathy&#8217;s &#8220;agentic engineering&#8221; isn&#8217;t just a rebrand. It&#8217;s a fundamentally different job description.</p><p>For designers: if AI can generate any interface from a description, then the differentiator isn&#8217;t your ability to push pixels. It&#8217;s your ability to understand users, define problems, make intentional decisions, and apply taste that AI can&#8217;t replicate. Paper.design&#8217;s founders put it well: AI will help turn design into code, but it&#8217;s the designer&#8217;s role to decide <em><strong>what</strong></em> to build, steer the AI, and make sure it&#8217;s cohesive.</p><p>The people who thrive in this next era won&#8217;t be defined by their tool like Figma, Cursor, Claude, whatever comes next. They&#8217;ll be defined by their judgment.</p><p>And honestly? As someone whose coding stopped at JavaScript but who&#8217;s now deep in Claude Code and Figma MCP workflows, I find that both terrifying and kind of hopeful.</p><p>I just don&#8217;t think we should pretend we know how this ends.</p><div><hr></div><p><em>What&#8217;s your take? Is design evolving or dying? Is the programming language question even the right question? I&#8217;m genuinely working this out in public . Hit reply, I want to hear what you think.</em></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!D1Xc!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fedeb24c8-b0ea-4d09-b5c6-1471ebc23115_3840x2010.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!D1Xc!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fedeb24c8-b0ea-4d09-b5c6-1471ebc23115_3840x2010.png 424w, https://substackcdn.com/image/fetch/$s_!D1Xc!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fedeb24c8-b0ea-4d09-b5c6-1471ebc23115_3840x2010.png 848w, https://substackcdn.com/image/fetch/$s_!D1Xc!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fedeb24c8-b0ea-4d09-b5c6-1471ebc23115_3840x2010.png 1272w, https://substackcdn.com/image/fetch/$s_!D1Xc!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fedeb24c8-b0ea-4d09-b5c6-1471ebc23115_3840x2010.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!D1Xc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fedeb24c8-b0ea-4d09-b5c6-1471ebc23115_3840x2010.png" width="1456" height="762" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/edeb24c8-b0ea-4d09-b5c6-1471ebc23115_3840x2010.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:762,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!D1Xc!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fedeb24c8-b0ea-4d09-b5c6-1471ebc23115_3840x2010.png 424w, https://substackcdn.com/image/fetch/$s_!D1Xc!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fedeb24c8-b0ea-4d09-b5c6-1471ebc23115_3840x2010.png 848w, https://substackcdn.com/image/fetch/$s_!D1Xc!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fedeb24c8-b0ea-4d09-b5c6-1471ebc23115_3840x2010.png 1272w, https://substackcdn.com/image/fetch/$s_!D1Xc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fedeb24c8-b0ea-4d09-b5c6-1471ebc23115_3840x2010.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div>]]></content:encoded></item><item><title><![CDATA[My Design Was Perfect. My Prompt Wasn't.]]></title><description><![CDATA[I built a Figma plugin that reads your design and builds the right prompt for you, every single time.]]></description><link>https://www.designaistack.com/p/my-design-was-perfect-my-prompt-wasnt</link><guid isPermaLink="false">https://www.designaistack.com/p/my-design-was-perfect-my-prompt-wasnt</guid><dc:creator><![CDATA[Sherizan]]></dc:creator><pubDate>Thu, 26 Feb 2026 14:31:30 GMT</pubDate><enclosure url="https://api.substack.com/feed/podcast/189158319/182125e7fb089ddec3dc8329c5418c05.mp3" length="0" type="audio/mpeg"/><content:encoded><![CDATA[<p>There&#8217;s a moment every designer and developer knows well.</p><p>You&#8217;ve spent hours getting the component just right inside Figma. The spacing is tight, the tokens are named correctly (mostly), and the layout actually makes sense. You open up your AI coding tool and then you write a prompt. Something like:</p><blockquote><p><em>&#8220;Build this card component in React Native.&#8221;</em></p></blockquote><p>And what comes back is... close. But not right. The padding is off. The component ignores your design tokens. The variant states are missing. So you iterate. You write a better prompt. You get closer. You iterate again.</p><p>What just happened wasn&#8217;t a failure of AI. It was a failure of context. The model didn&#8217;t know what it didn&#8217;t know and neither did you, until you saw what was missing.</p><p>I built DesignAgent because I kept living in that gap.</p><h2>The Real Problem with Prompting from Design</h2><div class="pullquote"><p>When us designers use AI to turn Figma screens into code, the quality of the output lives and dies by the quality of the prompt. But here&#8217;s the thing nobody talks about: most of us designers don&#8217;t know what information a good prompt actually needs, and most developers don&#8217;t have time to decode a Figma file to find out.</p></div><p>There are a few things that silently break every build:</p><ul><li><p>Components without auto-layout that confuse the AI&#8217;s understanding of spacing relationships</p></li><li><p>Design tokens that exist in Figma but never make it into the prompt</p></li><li><p>Platform mismatches: a component built for web being prompted for a React Native context without adjustment</p></li><li><p>Missing variant states, unnamed layers, and absolute positioning that looks fine visually but generates brittle code</p></li></ul><p>The result? Inconsistency. Every prompt is a guess. Every handoff is a negotiation.</p><h2>What DesignAgent Actually Does</h2><p><a href="http://designagent.dev">DesignAgent</a> is a Figma plugin that sits inside your workspace and does something really simple: <strong>it reads your current selection, scores it, and writes the prompt for you.</strong></p><p>Not a generic prompt. Not a template you fill in. A context-specific, developer-ready prompt built from what&#8217;s actually in your design right now, for the platform you&#8217;re actually building on.</p><p>Select a component. Open the plugin. Choose your target platform. The prompt is ready.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!YnSw!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb1a25bed-99ba-423d-99a3-d8a03d65a76f_1920x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!YnSw!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb1a25bed-99ba-423d-99a3-d8a03d65a76f_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!YnSw!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb1a25bed-99ba-423d-99a3-d8a03d65a76f_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!YnSw!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb1a25bed-99ba-423d-99a3-d8a03d65a76f_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!YnSw!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb1a25bed-99ba-423d-99a3-d8a03d65a76f_1920x1080.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!YnSw!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb1a25bed-99ba-423d-99a3-d8a03d65a76f_1920x1080.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b1a25bed-99ba-423d-99a3-d8a03d65a76f_1920x1080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:368174,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.designaistack.com/i/189158319?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb1a25bed-99ba-423d-99a3-d8a03d65a76f_1920x1080.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!YnSw!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb1a25bed-99ba-423d-99a3-d8a03d65a76f_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!YnSw!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb1a25bed-99ba-423d-99a3-d8a03d65a76f_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!YnSw!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb1a25bed-99ba-423d-99a3-d8a03d65a76f_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!YnSw!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb1a25bed-99ba-423d-99a3-d8a03d65a76f_1920x1080.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h3>Five platforms, one consistent workflow</h3><p>DesignAgent supports five presets out of the box:</p><ul><li><p><strong>Next.js + Tailwind</strong> &#8212; for web teams building with the modern React stack</p></li><li><p><strong>React Native + NativeWind</strong> &#8212; for mobile teams who want utility-class consistency across platforms</p></li><li><p><strong>Web HTML/CSS</strong> &#8212; for projects that don&#8217;t live inside a framework</p></li><li><p><strong>SwiftUI</strong> &#8212; for iOS builders working natively</p></li><li><p><strong>Jetpack Compose</strong> &#8212; for Android developers handling UI in Kotlin</p></li></ul><p>Switch the preset, and the prompt changes. The structure adapts. The warnings update. The guidance reflects what that specific platform needs from your design.<br><br>It doesn&#8217;t just generate.. it scores.</p><p>Here&#8217;s the part that surprised even me during development: the scoring system became the most valuable feedback loop.</p><p>Before you ever copy a prompt, DesignAgent evaluates your selection across five dimensions: </p><ol><li><p>component structure</p></li><li><p>tokenization</p></li><li><p>layout</p></li><li><p>naming</p></li><li><p>variant coverage </p></li></ol><p>And gives you a score. It surfaces warnings where things will likely break in code. It flags absolute positioning. It tells you when you&#8217;re missing token references that your prompt will assume exist.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!zAXH!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7863f56f-9020-42e2-99e6-a60af22d0d60_1920x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!zAXH!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7863f56f-9020-42e2-99e6-a60af22d0d60_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!zAXH!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7863f56f-9020-42e2-99e6-a60af22d0d60_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!zAXH!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7863f56f-9020-42e2-99e6-a60af22d0d60_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!zAXH!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7863f56f-9020-42e2-99e6-a60af22d0d60_1920x1080.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!zAXH!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7863f56f-9020-42e2-99e6-a60af22d0d60_1920x1080.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7863f56f-9020-42e2-99e6-a60af22d0d60_1920x1080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:209780,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.designaistack.com/i/189158319?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7863f56f-9020-42e2-99e6-a60af22d0d60_1920x1080.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!zAXH!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7863f56f-9020-42e2-99e6-a60af22d0d60_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!zAXH!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7863f56f-9020-42e2-99e6-a60af22d0d60_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!zAXH!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7863f56f-9020-42e2-99e6-a60af22d0d60_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!zAXH!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7863f56f-9020-42e2-99e6-a60af22d0d60_1920x1080.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>You don&#8217;t have to guess why the output isn&#8217;t right. The plugin tells you, in plain language, before you ever leave Figma.</p><h2>What&#8217;s Actually Inside a DesignAgent Prompt</h2><p>This is the part I want to spend some time on, because it&#8217;s where the real work happens and it&#8217;s what makes DesignAgent different from any other prompt generator I&#8217;ve seen.</p><p>Most &#8220;prompt generators&#8221; are wrappers. They take what you tell them and rephrase it. DesignAgent is not that. The prompt it builds is a structured engineering document and it contains things you would never think to write yourself.</p><h3>1. It knows what you selected</h3><p>Before a single word of the prompt is written, DesignAgent reads your selection and classifies it. Not just the name and the size, but the <em>intent</em>: is this a screen? A standalone component? A reusable section? A multi-frame flow?</p><p>The classification matters because each of these things needs to be built differently. A screen prompt includes rules for a single output file. A flow prompt includes a sequencing spec &#8212; screen order, transitions, routes &#8212; before any code is written. A component prompt focuses on props and variants. A section prompt includes instructions for how it mounts into a parent screen. The prompt structure changes based on what you actually selected, not what you described.</p><h3>2. It sets Figma as the only source of truth</h3><p>One of the hardest problems in AI-assisted UI development isn&#8217;t generating code. It&#8217;s preventing the AI from making things up. Left to its own devices, an AI coding tool will fill in gaps with reasonable-looking guesses and those guesses are where bugs and inconsistencies are born.</p><p>Every DesignAgent prompt includes a set of hard constraints that the AI must follow. The most important: it may not guess any value that can be retrieved directly from your Figma file. Spacing, typography, color, tokens, component bindings all of it must come from the design. If something is ambiguous or missing, the AI is instructed to surface it as an open TODO with the exact node reference, not to make a decision on your behalf.</p><p>This is the &#8220;no invention&#8221; rule, and it&#8217;s baked into every prompt DesignAgent generates.</p><h3>3. It tells the AI how to read your design in the right order</h3><p>Here&#8217;s something that surprised me in development: the sequence in which an AI queries Figma matters enormously for both accuracy and efficiency. Request too much at once and the context overflows. Request in the wrong order and you miss dependencies between tokens, components, and interactions.</p><p>DesignAgent builds a specific, ordered reading strategy into every prompt. It tells the AI to start shallow just the root and immediate children and only go deeper where the design requires it. Then variables and tokens. Then component mappings. Then visual reference. Each step has a fallback if the previous one returns incomplete data.</p><p>This sequencing is invisible to you as a user. But it&#8217;s what separates a prompt that produces consistent, production-ready code from one that produces something close but structurally off.</p><h3>4. It accounts for your design system</h3><p>If your components have Code Connect mappings a Figma feature that links design components to their code equivalents DesignAgent&#8217;s prompts will instruct the AI to use those mappings. Not as a suggestion. As a requirement.</p><p>The prompt also tracks token coverage: which values in your design are backed by a design token versus which ones are raw hardcoded values. This shows up in the scoring panel, and it also shapes the prompt. The AI is told where tokens exist, where they don&#8217;t, and how to handle each case. The result is code that references your actual design system rather than inventing a parallel set of magic numbers.</p><h3>5. The output is structured, not open-ended</h3><p>Most AI prompts end with something vague like &#8220;build this.&#8221; DesignAgent prompts end with a precise output contract: a file tree, code blocks labeled by filepath, and an open TODOs list for anything the AI couldn&#8217;t resolve from the design. No alternatives. No multiple implementations.</p><p>This matters for teams. When every developer is working from the same structured prompt format, the code that comes back follows the same structure too. It&#8217;s reviewable. It&#8217;s predictable. It fits into your existing codebase rather than arriving as a surprise.</p><h3>Why Consistency Matters More Than You Think</h3><p>The dirty secret of AI-assisted development is that the variance in prompt quality creates variance in output quality (garbage in, garbage out) and that variance compounds across a team.</p><p>When four engineers on the same project are prompting from the same designs but writing their own prompts, you get four different interpretations of the same component. Over time, that becomes technical debt. Inconsistent spacing. Token values hardcoded in some places, referenced in others. Components that look the same in Figma but behave differently in production.</p><p>DesignAgent solves this not by being opinionated about your design but by being precise about what your design already says. The prompt it generates isn&#8217;t my interpretation of your component. It&#8217;s a structured reading of your Figma node, translated into the language your AI coding tool needs to hear.</p><p>Same design, same platform, same prompt. Every time. Whether it&#8217;s you or a teammate who just joined the project.</p><h2>Who This Is For</h2><p>If you&#8217;re a designer who&#8217;s tired of being told &#8220;the code doesn&#8217;t match the design&#8221; then DesignAgent is for you. Not because it fixes the code, but because it equips you with the context to communicate your design accurately to AI tools and to the developers working alongside them.</p><p>If you&#8217;re a developer who spends too much time reverse-engineering Figma files to write a good prompt then DesignAgent is for you. The analysis work is already done. The spec is already extracted. The prompt is already written.</p><p>If you&#8217;re a team that&#8217;s trying to move faster without letting quality slip &#8212; DesignAgent gives you a shared language between design and code that doesn&#8217;t depend on whoever wrote the prompt that day.</p><h2>Where We Are Right Now</h2><p>DesignAgent is <a href="https://www.figma.com/community/plugin/1604428052675393154">currently available in Figma Community</a>. That means the core engine is working: the analysis, scoring, prompt generation and platform presets are all live inside Figma. </p><p>I&#8217;d love to hear what breaks, what surprises you, and what you wish it did differently.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!D1Xc!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fedeb24c8-b0ea-4d09-b5c6-1471ebc23115_3840x2010.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!D1Xc!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fedeb24c8-b0ea-4d09-b5c6-1471ebc23115_3840x2010.png 424w, https://substackcdn.com/image/fetch/$s_!D1Xc!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fedeb24c8-b0ea-4d09-b5c6-1471ebc23115_3840x2010.png 848w, https://substackcdn.com/image/fetch/$s_!D1Xc!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fedeb24c8-b0ea-4d09-b5c6-1471ebc23115_3840x2010.png 1272w, https://substackcdn.com/image/fetch/$s_!D1Xc!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fedeb24c8-b0ea-4d09-b5c6-1471ebc23115_3840x2010.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!D1Xc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fedeb24c8-b0ea-4d09-b5c6-1471ebc23115_3840x2010.png" width="1456" height="762" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/edeb24c8-b0ea-4d09-b5c6-1471ebc23115_3840x2010.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:762,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!D1Xc!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fedeb24c8-b0ea-4d09-b5c6-1471ebc23115_3840x2010.png 424w, https://substackcdn.com/image/fetch/$s_!D1Xc!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fedeb24c8-b0ea-4d09-b5c6-1471ebc23115_3840x2010.png 848w, https://substackcdn.com/image/fetch/$s_!D1Xc!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fedeb24c8-b0ea-4d09-b5c6-1471ebc23115_3840x2010.png 1272w, https://substackcdn.com/image/fetch/$s_!D1Xc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fedeb24c8-b0ea-4d09-b5c6-1471ebc23115_3840x2010.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div>]]></content:encoded></item><item><title><![CDATA[I Let Claude Code Design a Figma Screen. Here’s What Actually Happened.]]></title><description><![CDATA[A honest look at the setup, the workflow, and whether it's worth your team's time.]]></description><link>https://www.designaistack.com/p/i-let-claude-code-design-a-figma</link><guid isPermaLink="false">https://www.designaistack.com/p/i-let-claude-code-design-a-figma</guid><dc:creator><![CDATA[Sherizan]]></dc:creator><pubDate>Tue, 24 Feb 2026 17:15:00 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/4e171781-0366-436d-a1de-968634f8d1d6_2400x1572.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Recently I posted a side-by-side screenshot in my design team group chat. Two versions of the same Wallet screen from our app: one assembled manually by a designer, one generated entirely by Claude Code. I asked people to guess which was which. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!KDSE!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F43b4e8cb-b22a-4a4c-8e91-a97e9ec8e8c9_2534x2186.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!KDSE!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F43b4e8cb-b22a-4a4c-8e91-a97e9ec8e8c9_2534x2186.png 424w, https://substackcdn.com/image/fetch/$s_!KDSE!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F43b4e8cb-b22a-4a4c-8e91-a97e9ec8e8c9_2534x2186.png 848w, https://substackcdn.com/image/fetch/$s_!KDSE!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F43b4e8cb-b22a-4a4c-8e91-a97e9ec8e8c9_2534x2186.png 1272w, https://substackcdn.com/image/fetch/$s_!KDSE!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F43b4e8cb-b22a-4a4c-8e91-a97e9ec8e8c9_2534x2186.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!KDSE!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F43b4e8cb-b22a-4a4c-8e91-a97e9ec8e8c9_2534x2186.png" width="728" height="628" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/43b4e8cb-b22a-4a4c-8e91-a97e9ec8e8c9_2534x2186.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;normal&quot;,&quot;height&quot;:1256,&quot;width&quot;:1456,&quot;resizeWidth&quot;:728,&quot;bytes&quot;:1048691,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.designaistack.com/i/188168362?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F43b4e8cb-b22a-4a4c-8e91-a97e9ec8e8c9_2534x2186.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:&quot;center&quot;,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!KDSE!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F43b4e8cb-b22a-4a4c-8e91-a97e9ec8e8c9_2534x2186.png 424w, https://substackcdn.com/image/fetch/$s_!KDSE!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F43b4e8cb-b22a-4a4c-8e91-a97e9ec8e8c9_2534x2186.png 848w, https://substackcdn.com/image/fetch/$s_!KDSE!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F43b4e8cb-b22a-4a4c-8e91-a97e9ec8e8c9_2534x2186.png 1272w, https://substackcdn.com/image/fetch/$s_!KDSE!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F43b4e8cb-b22a-4a4c-8e91-a97e9ec8e8c9_2534x2186.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div>
      <p>
          <a href="https://www.designaistack.com/p/i-let-claude-code-design-a-figma">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[A Designer’s Guide to Cost-Aware Vibecoding]]></title><description><![CDATA[How I Stopped Paying Claude Opus to Do Figma&#8217;s Job]]></description><link>https://www.designaistack.com/p/stop-paying-claude-opus-to-do-figmas</link><guid isPermaLink="false">https://www.designaistack.com/p/stop-paying-claude-opus-to-do-figmas</guid><dc:creator><![CDATA[Sherizan]]></dc:creator><pubDate>Tue, 17 Feb 2026 09:15:45 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!p_U3!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89d91e5a-8aca-46c0-b7fa-a64949635f24_2160x2160.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>This post is dedicated to designers who build, <em>without a huge budget</em>.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!p_U3!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89d91e5a-8aca-46c0-b7fa-a64949635f24_2160x2160.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!p_U3!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89d91e5a-8aca-46c0-b7fa-a64949635f24_2160x2160.png 424w, https://substackcdn.com/image/fetch/$s_!p_U3!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89d91e5a-8aca-46c0-b7fa-a64949635f24_2160x2160.png 848w, https://substackcdn.com/image/fetch/$s_!p_U3!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89d91e5a-8aca-46c0-b7fa-a64949635f24_2160x2160.png 1272w, https://substackcdn.com/image/fetch/$s_!p_U3!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89d91e5a-8aca-46c0-b7fa-a64949635f24_2160x2160.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!p_U3!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89d91e5a-8aca-46c0-b7fa-a64949635f24_2160x2160.png" width="1456" height="1456" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/89d91e5a-8aca-46c0-b7fa-a64949635f24_2160x2160.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1456,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2997421,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://designaistack.com/i/187983445?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89d91e5a-8aca-46c0-b7fa-a64949635f24_2160x2160.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!p_U3!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89d91e5a-8aca-46c0-b7fa-a64949635f24_2160x2160.png 424w, https://substackcdn.com/image/fetch/$s_!p_U3!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89d91e5a-8aca-46c0-b7fa-a64949635f24_2160x2160.png 848w, https://substackcdn.com/image/fetch/$s_!p_U3!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89d91e5a-8aca-46c0-b7fa-a64949635f24_2160x2160.png 1272w, https://substackcdn.com/image/fetch/$s_!p_U3!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89d91e5a-8aca-46c0-b7fa-a64949635f24_2160x2160.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>I love vibecoding but I need to talk about the part of vibecoding nobody posts screenshots of.</p><p>The bill. &#129534;</p><div class="pullquote"><p><strong>Goal:</strong> keep vibe coding f&#8230;</p></div>
      <p>
          <a href="https://www.designaistack.com/p/stop-paying-claude-opus-to-do-figmas">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[How to get “engineering-grade” prototypes in Figma Make using npm packages]]></title><description><![CDATA[One source of truth: design and prototype with the same React design system]]></description><link>https://www.designaistack.com/p/your-figma-make-prototypes-look-cheap</link><guid isPermaLink="false">https://www.designaistack.com/p/your-figma-make-prototypes-look-cheap</guid><dc:creator><![CDATA[Sherizan]]></dc:creator><pubDate>Tue, 10 Feb 2026 16:18:36 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!qo8B!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3b9da7c9-0a3a-441a-8b3e-888730f228ad_3600x2358.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!qo8B!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3b9da7c9-0a3a-441a-8b3e-888730f228ad_3600x2358.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!qo8B!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3b9da7c9-0a3a-441a-8b3e-888730f228ad_3600x2358.png 424w, https://substackcdn.com/image/fetch/$s_!qo8B!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3b9da7c9-0a3a-441a-8b3e-888730f228ad_3600x2358.png 848w, https://substackcdn.com/image/fetch/$s_!qo8B!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3b9da7c9-0a3a-441a-8b3e-888730f228ad_3600x2358.png 1272w, https://substackcdn.com/image/fetch/$s_!qo8B!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3b9da7c9-0a3a-441a-8b3e-888730f228ad_3600x2358.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!qo8B!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3b9da7c9-0a3a-441a-8b3e-888730f228ad_3600x2358.png" width="1456" height="954" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3b9da7c9-0a3a-441a-8b3e-888730f228ad_3600x2358.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:954,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:15564101,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://designaistack.com/i/187485044?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3b9da7c9-0a3a-441a-8b3e-888730f228ad_3600x2358.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!qo8B!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3b9da7c9-0a3a-441a-8b3e-888730f228ad_3600x2358.png 424w, https://substackcdn.com/image/fetch/$s_!qo8B!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3b9da7c9-0a3a-441a-8b3e-888730f228ad_3600x2358.png 848w, https://substackcdn.com/image/fetch/$s_!qo8B!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3b9da7c9-0a3a-441a-8b3e-888730f228ad_3600x2358.png 1272w, https://substackcdn.com/image/fetch/$s_!qo8B!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3b9da7c9-0a3a-441a-8b3e-888730f228ad_3600x2358.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>High-quality prototypes in Figma Make come from one decision:</p><blockquote><p><strong>Use the same component library engineers already ship.</strong></p></blockquote><p>Figma Make can now install npm packages, including yours or ANY component library package, so your prototype uses real production components instead of lookalikes.</p><h3>What Figma Make expects (so you do not fight the tool)</h3><p>Your design system package needs to be:</p><ul><li><p>React 18+</p></li><li><p>Published as an npm package (public npm, or your org&#8217;s private Figma npm registry)</p></li><li><p>Make currently supports React codebases for design system packages.</p></li></ul><div><hr></div><h3>Path A: Bring your org design system package into Make (the righteous path)</h3><h4>Step 1: Publish your package (public or private)</h4><p>If your design system is internal, publish it to your org&#8217;s private npm registry in Figma Make.</p><p><strong>Private registry setup (one-time admin step):</strong></p><ol><li><p>Create a new Figma Make file</p></li><li><p>Make settings &#8594; <strong>Figma npm registry</strong></p></li><li><p>Enter your org scope (example: @exampleco)</p></li><li><p>Generate key (org admin required)</p></li><li><p>Copy the snippet into your .npmrc</p></li><li><p>npm publish your package</p></li></ol><p><strong>Then, inside a Make file:</strong></p><ul><li><p>Ask chat: &#8220;install @mycompany/design-system&#8221;</p></li><li><p>Or add it to package.json directly</p></li></ul><blockquote><p>Tip from Figma: after setting up the npm registry, create another new Make file before installing the package.</p></blockquote><h4>Step 2: Teach Make how to use your design system (this is where quality comes from)</h4><p>Make can inspect your package, but it performs much better with explicit guidance files.</p><p>Every Make file has a <em>guidelines/</em> folder.<br>Make reads <em>guidelines/guidelines.md</em> first.</p><p><strong>Recommended Structure</strong></p><pre><code>guidelines/
  guidelines.md
  design-tokens.md</code></pre><p><strong>Guidelines writing rule</strong><br>Use direct, deterministic language. &#8220;Do not&#8230;&#8221; beats &#8220;use sparingly.&#8221;</p><p><strong>Copy-paste: </strong>a strong guidelines/guidelines.md starter</p><pre><code>This Make project uses our production React design system from @mycompany/ui.

Rules:
- Always prefer @mycompany/ui components over plain HTML elements.
- Do not invent new UI patterns or colors.
- If a component exists, use it. If unsure, inspect /node_modules/@mycompany/ui.

Always read first:
- overview-components.md
- all files in design-tokens/

Before writing code:
1) Choose components from @mycompany/ui
2) Read the relevant file in components/ (example: components/button.md)
3) Implement using documented props and variants only</code></pre><p>Unfortunately, you can&#8217;t copy-paste my design-tokens.md as its specifically made for my design system but I&#8217;ll show you how I wrote mine.</p><pre><code># Botim Design Tokens (Make Guidelines)

This project must use Botim tokens consistently.
Do not invent new values.
Do not hardcode arbitrary colors, font sizes, or spacing outside this file.

If you must add a new token:
- Add it here first
- Use the same naming pattern
- Keep values deterministic and reusable

---

## Typography

### Font families
- **Brand / UI:** `Inter`

### Type scale (px)
Use only these sizes.

- `type.display.lg` = `32px` (40px line-height, 700)
- `type.display.md` = `28px` (36px line-height, 700)
- `type.title.lg` = `22px` (28px line-height, 700)
.. and more

### Usage rules
- Screen titles use `type.title.lg` or `type.title.md`
- Primary body text uses `type.body.lg`
- Secondary/metadata uses `type.body.md` or `type.caption`
- Do not use font weights other than 400, 500, 700

---

## Spacing

### Base unit
All spacing is based on **4px**.

### Spacing scale (px)
Use only these values.

- `space.0` = `0px`
- `space.1` = `4px`
- `space.10` = `40px`
.. and more

### Layout rules (mobile)
- Screen horizontal padding: `space.4` (16px)
- Section vertical spacing: `space.6` (24px)
- Card padding: `space.4` (16px)
- Gap between stacked items: `space.3` (12px) or `space.4` (16px)
- Button height target: 48px using padding + line-height, not random height values

---

## Color

### Neutral
- `color.bg` = `#FFFFFF`
- `color.surface` = `#F7F8FA`
- `color.border` = `#E5E9F0`
.. and more

### Brand
- `color.brand.primary` = `#2F6BFF`
- `color.brand.primaryHover` = `#2557D6`
- `color.brand.primaryPressed` = `#1E47B3`
.. and more

### Semantic
- `color.success` = `#16A34A`
- `color.successBg` = `#EAF7EF`
- `color.info` = `#2563EB`
.. and more

### Usage rules
- Default page background: `color.bg`
- Cards/containers: `color.surface`
- Borders: `color.border` (do not invent lighter/darker borders)
- Primary CTA: background `color.brand.primary`, text `color.brand.onPrimary`
- Destructive CTA: background `color.danger`, text `color.text.inverse`
- Links: `color.info`
- Error messages: text `color.danger`, background `color.dangerBg`

---

## Make enforcement rules

- Always reference tokens by name in code (or via your design system theme).
- Do not introduce new hex codes in components.
- Do not introduce spacing values outside the spacing scale.
- Do not introduce font sizes outside the type scale.</code></pre><p>I know it&#8217;s pretty long, but that&#8217;s how I want it to be, detailed and deterministic so the quality of the output is accurate.</p><h3>Putting it to the test</h3><p>As you can see from my example below, the prototype on the left is using the new npm registry that fetches my production-quality code components that my devs use, while on the right is using our Figma design screen with design system file attached (the current or maybe now its the <em>traditional</em> way).</p><p>From a UI and visual perspective, the version on the left is <strong>MILES BETTER</strong> as it adheres to the layout, spacing is being picked up by the guidelines.md whereas the &#8220;traditional&#8221; way of building from Figma design files, the divider breaks, the spacing is not inherited, it looks like that cheap prototype that does not look like it deserves to be published and shared.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!E8EQ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f64b7a8-c69c-4174-86ed-719f6bb6297c_3600x2358.png" data-component-name="Image2ToDOM"><div class="image2-inset image2-full-screen"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!E8EQ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f64b7a8-c69c-4174-86ed-719f6bb6297c_3600x2358.png 424w, https://substackcdn.com/image/fetch/$s_!E8EQ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f64b7a8-c69c-4174-86ed-719f6bb6297c_3600x2358.png 848w, https://substackcdn.com/image/fetch/$s_!E8EQ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f64b7a8-c69c-4174-86ed-719f6bb6297c_3600x2358.png 1272w, https://substackcdn.com/image/fetch/$s_!E8EQ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f64b7a8-c69c-4174-86ed-719f6bb6297c_3600x2358.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!E8EQ!,w_5760,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f64b7a8-c69c-4174-86ed-719f6bb6297c_3600x2358.png" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3f64b7a8-c69c-4174-86ed-719f6bb6297c_3600x2358.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;full&quot;,&quot;height&quot;:954,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2200402,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://designaistack.com/i/187485044?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f64b7a8-c69c-4174-86ed-719f6bb6297c_3600x2358.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:&quot;center&quot;,&quot;offset&quot;:false}" class="sizing-fullscreen" alt="" srcset="https://substackcdn.com/image/fetch/$s_!E8EQ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f64b7a8-c69c-4174-86ed-719f6bb6297c_3600x2358.png 424w, https://substackcdn.com/image/fetch/$s_!E8EQ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f64b7a8-c69c-4174-86ed-719f6bb6297c_3600x2358.png 848w, https://substackcdn.com/image/fetch/$s_!E8EQ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f64b7a8-c69c-4174-86ed-719f6bb6297c_3600x2358.png 1272w, https://substackcdn.com/image/fetch/$s_!E8EQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f64b7a8-c69c-4174-86ed-719f6bb6297c_3600x2358.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h3>But here&#8217;s the best part.. </h3><p>The prototype on the left also inherits all the component props and all the state changes so you get the actual code components that your devs are using in production!</p><p>Check out this demo video where you can see how it automatically:</p><ul><li><p>inherits the input field active state with the &#8220;clear values&#8221; X icon.</p></li><li><p>the buttons have the exact implementation of the pressed and hover states.</p></li></ul><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;8bfaff4f-744a-4a9a-bddc-5279a2dccd36&quot;,&quot;duration&quot;:null}"></div><h4>Final step: Turn it into a template for the whole org</h4><p>After installing packages and adding guidelines, publish the Make file as a template so everyone starts from the same baseline.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!U8e5!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F732d3116-991a-4205-89f4-a3ae6e28b869_2400x1572.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!U8e5!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F732d3116-991a-4205-89f4-a3ae6e28b869_2400x1572.png 424w, https://substackcdn.com/image/fetch/$s_!U8e5!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F732d3116-991a-4205-89f4-a3ae6e28b869_2400x1572.png 848w, https://substackcdn.com/image/fetch/$s_!U8e5!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F732d3116-991a-4205-89f4-a3ae6e28b869_2400x1572.png 1272w, https://substackcdn.com/image/fetch/$s_!U8e5!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F732d3116-991a-4205-89f4-a3ae6e28b869_2400x1572.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!U8e5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F732d3116-991a-4205-89f4-a3ae6e28b869_2400x1572.png" width="1456" height="954" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/732d3116-991a-4205-89f4-a3ae6e28b869_2400x1572.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:954,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:3090566,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://designaistack.com/i/187485044?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F732d3116-991a-4205-89f4-a3ae6e28b869_2400x1572.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!U8e5!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F732d3116-991a-4205-89f4-a3ae6e28b869_2400x1572.png 424w, https://substackcdn.com/image/fetch/$s_!U8e5!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F732d3116-991a-4205-89f4-a3ae6e28b869_2400x1572.png 848w, https://substackcdn.com/image/fetch/$s_!U8e5!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F732d3116-991a-4205-89f4-a3ae6e28b869_2400x1572.png 1272w, https://substackcdn.com/image/fetch/$s_!U8e5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F732d3116-991a-4205-89f4-a3ae6e28b869_2400x1572.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div><hr></div><h3>Path B: No internal design system yet? Use an existing one (the fun path)</h3><p>Maybe you need to move fast as a solo founder or just a team with no designers, this one&#8217;s for you!</p>
      <p>
          <a href="https://www.designaistack.com/p/your-figma-make-prototypes-look-cheap">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[From Design Systems to Design Models]]></title><description><![CDATA[An experiment in AI-native design governance]]></description><link>https://www.designaistack.com/p/from-design-systems-to-design-models</link><guid isPermaLink="false">https://www.designaistack.com/p/from-design-systems-to-design-models</guid><dc:creator><![CDATA[Sherizan]]></dc:creator><pubDate>Sat, 17 Jan 2026 15:01:34 GMT</pubDate><enclosure url="https://api.substack.com/feed/podcast/184842490/5d97d9fe6ad5fe60a6b46f281ee3c9aa.mp3" length="0" type="audio/mpeg"/><content:encoded><![CDATA[<p>This article introduces an idea I&#8217;ve been exploring while working with AI-assisted design and coding workflows.</p><p>As AI becomes faster and more capable at producing UI, some tension is starting to show up:</p><blockquote><pre><code><strong>Our design systems were never built to operate at AI speed.</strong></code></pre></blockquote><p>They were built to be read.<br>They assume humans will interpret rules, remember conventions, and catch mistakes in review.</p><p>AI doesn&#8217;t work that way.</p><p>This article proposes a shift from <strong>Design Systems</strong> to what I call a <strong>Design Model</strong>:<br>an executable form of design governance that AI tools, agents, and engineers can safely operate inside.</p><p>This is still experimental.<br>But it&#8217;s already working.</p><h2>The problem isn&#8217;t generation anymore</h2><p>AI can generate UI easily now.</p><p>Screens. Components. Layouts. Variants.<br>That part is no longer impressive.</p><p>The real problem is something else:</p><p>Who decides what is allowed to exist?<br>Which components are valid?<br>Which styles are acceptable?<br>Which combinations should never ship?</p><p>When AI can generate <em>anything</em>, what we often get isn&#8217;t better UX, it&#8217;s AI slop: inconsistent, off-brand, technically valid but unshippable UI.</p><p>Design systems were supposed to prevent this.<br>But they rely on documentation, memory, and human enforcement.</p><p>At AI speed, that breaks down.</p><h2>Going one level up: the Design Model</h2><p>Instead of asking how AI should generate UI, I started asking a different question:</p><blockquote><p>What should AI be allowed to operate <em>inside of</em>?</p></blockquote><p>That led me to the idea of a <strong>Design Model</strong>.</p><p>A Design Model is an evolution of a design system but expressed as something executable, not just readable.</p><p>It has three parts:</p><ul><li><p><strong>Tokens</strong><br>Define what styles are allowed<br>(colors, spacing, typography, radius, etc.)</p></li><li><p><strong>Contracts</strong><br>Define what components exist and what props are valid<br>(variants, sizes, defaults)</p></li><li><p><strong>Constraints</strong><br>Define what decisions are <em>not allowed</em><br>(for example: only one primary action per view)</p></li></ul><p>Together, these don&#8217;t describe UI. They <strong>govern</strong> it.</p><h2>A brief analogy (LLMs, but lightly)</h2><p>If the analogy helps:</p><p>A <strong>Large Language Model</strong> is not a collection of sentences.<br>It&#8217;s a system that encodes patterns and rules well enough to produce the <em>next</em> meaningful output.</p><p>In a similar way, a Design Model is not a collection of components.<br>It encodes design decisions: tokens, contracts, constraints so valid UI can be resolved, not guessed.</p><p>The goal is not to copy how LLMs work.<br>It&#8217;s to apply the same shift: from static artifacts to an executable model.</p><h2>Generated vs Resolved</h2><p>In a Design Model, UI isn&#8217;t generated but instead it resolved.</p><p>An intent comes in from a developer, an AI agent, or a coding assistant.<br>That intent is evaluated against the model.</p><ul><li><p>If it fits &#8594; it resolves cleanly</p></li><li><p>If it doesn&#8217;t &#8594; the system explains why and suggests adjustments</p></li></ul><p>No static documentation.<br>No &#8220;please follow the design system &#128591;&#8221;.<br>No late-stage reviews trying to catch violations. (My QA team can finally breathe)</p><p>Rules are enforced at runtime with guidance, not policing.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!P5Ks!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2a27d2b2-1697-4b13-9fa5-e071cff2b58f_1536x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!P5Ks!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2a27d2b2-1697-4b13-9fa5-e071cff2b58f_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!P5Ks!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2a27d2b2-1697-4b13-9fa5-e071cff2b58f_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!P5Ks!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2a27d2b2-1697-4b13-9fa5-e071cff2b58f_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!P5Ks!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2a27d2b2-1697-4b13-9fa5-e071cff2b58f_1536x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!P5Ks!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2a27d2b2-1697-4b13-9fa5-e071cff2b58f_1536x1024.png" width="1456" height="971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2a27d2b2-1697-4b13-9fa5-e071cff2b58f_1536x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2463269,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://designaistack.com/i/184842490?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2a27d2b2-1697-4b13-9fa5-e071cff2b58f_1536x1024.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!P5Ks!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2a27d2b2-1697-4b13-9fa5-e071cff2b58f_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!P5Ks!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2a27d2b2-1697-4b13-9fa5-e071cff2b58f_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!P5Ks!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2a27d2b2-1697-4b13-9fa5-e071cff2b58f_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!P5Ks!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2a27d2b2-1697-4b13-9fa5-e071cff2b58f_1536x1024.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">My take on the comparison</figcaption></figure></div><h2>A deliberately small demo</h2><p>To keep this honest, I built a small demo using just one component: a Button.</p><p>That&#8217;s intentional.</p><p>Buttons are:</p><ul><li><p>universally understood</p></li><li><p>easy to misuse</p></li><li><p>visually obvious when wrong</p></li><li><p>a common source of inconsistency</p></li></ul><p>If a system can&#8217;t govern a button, it won&#8217;t govern anything more complex.</p><p>In the demo:</p><ul><li><p>You can render one or two primary buttons: it works</p></li><li><p>You can then add a constraint (&#8220;only one primary button per view&#8221;)</p></li><li><p>Run the same intent again</p></li><li><p>The outcome changes without changing the prompt or the renderer</p></li></ul><p>The only thing that changed was the model.</p><p>&#128249; Watch my <em>Demo video above.</em></p><h2>Why this matters for AI-assisted coding</h2><p>AI tools today can read design documentation (via MCP or similar approaches).<br>But documentation has no authority.</p><p>A Design Model does.</p><p>It sits between AI and code and answers one question consistently:</p><blockquote><p>&#8220;Is this allowed to exist?&#8221;</p></blockquote><p>AI can propose.<br>The model decides.</p><p>That shifts AI-assisted coding from:</p><blockquote><p>&#8220;Generate UI and hope it&#8217;s right&#8221;</p></blockquote><p>to:</p><blockquote><p><strong>&#8220;Resolve UI against rules and ship with confidence.&#8221;</strong></p></blockquote><h2>This is still experimental</h2><p>This is not:</p><ul><li><p>a new product announcement</p></li><li><p>a framework</p></li><li><p>replacing designers or Figma</p></li><li><p>a completed standard</p></li></ul><p>It&#8217;s a working exploration of an idea that feels increasingly necessary as AI accelerates how UI is built.</p><p>The repo is public. You can fork it, add a component, add a constraint, and try to break it.</p><p><strong>Repo link: <a href="https://github.com/sherizan/design-model">https://github.com/sherizan/design-model</a></strong></p><h2>An open invitation</h2><p>If you&#8217;re researching AI and design systems,<br>or actively trying to adapt design systems for AI workflows,</p><p>I&#8217;d genuinely love to join forces and work toward a shared standard.</p><p>Design systems helped us scale consistency.<br>Design Models may be how we scale decision-making.</p><p>This is early.<br>But it feels like the right direction.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Eyjj!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4a843b8c-7322-4b39-9405-b01bb83a0685_3840x2010.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Eyjj!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4a843b8c-7322-4b39-9405-b01bb83a0685_3840x2010.png 424w, https://substackcdn.com/image/fetch/$s_!Eyjj!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4a843b8c-7322-4b39-9405-b01bb83a0685_3840x2010.png 848w, https://substackcdn.com/image/fetch/$s_!Eyjj!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4a843b8c-7322-4b39-9405-b01bb83a0685_3840x2010.png 1272w, https://substackcdn.com/image/fetch/$s_!Eyjj!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4a843b8c-7322-4b39-9405-b01bb83a0685_3840x2010.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Eyjj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4a843b8c-7322-4b39-9405-b01bb83a0685_3840x2010.png" width="1456" height="762" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4a843b8c-7322-4b39-9405-b01bb83a0685_3840x2010.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:762,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:7501625,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://designaistack.com/i/184842490?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4a843b8c-7322-4b39-9405-b01bb83a0685_3840x2010.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Eyjj!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4a843b8c-7322-4b39-9405-b01bb83a0685_3840x2010.png 424w, https://substackcdn.com/image/fetch/$s_!Eyjj!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4a843b8c-7322-4b39-9405-b01bb83a0685_3840x2010.png 848w, https://substackcdn.com/image/fetch/$s_!Eyjj!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4a843b8c-7322-4b39-9405-b01bb83a0685_3840x2010.png 1272w, https://substackcdn.com/image/fetch/$s_!Eyjj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4a843b8c-7322-4b39-9405-b01bb83a0685_3840x2010.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p>]]></content:encoded></item><item><title><![CDATA[Don't sleep on Cursor's Plan Mode]]></title><description><![CDATA[Refactoring an app as a designer (without knowing engineering)]]></description><link>https://www.designaistack.com/p/this-is-how-i-use-cursors-plan-mode</link><guid isPermaLink="false">https://www.designaistack.com/p/this-is-how-i-use-cursors-plan-mode</guid><dc:creator><![CDATA[Sherizan]]></dc:creator><pubDate>Fri, 16 Jan 2026 07:36:37 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!rTwH!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd8ec8712-8f4e-4e3d-a66b-7672db8eced3_1874x1252.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!rTwH!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd8ec8712-8f4e-4e3d-a66b-7672db8eced3_1874x1252.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!rTwH!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd8ec8712-8f4e-4e3d-a66b-7672db8eced3_1874x1252.png 424w, https://substackcdn.com/image/fetch/$s_!rTwH!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd8ec8712-8f4e-4e3d-a66b-7672db8eced3_1874x1252.png 848w, https://substackcdn.com/image/fetch/$s_!rTwH!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd8ec8712-8f4e-4e3d-a66b-7672db8eced3_1874x1252.png 1272w, https://substackcdn.com/image/fetch/$s_!rTwH!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd8ec8712-8f4e-4e3d-a66b-7672db8eced3_1874x1252.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!rTwH!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd8ec8712-8f4e-4e3d-a66b-7672db8eced3_1874x1252.png" width="1456" height="973" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d8ec8712-8f4e-4e3d-a66b-7672db8eced3_1874x1252.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:973,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1180184,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://designaistack.com/i/184741770?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd8ec8712-8f4e-4e3d-a66b-7672db8eced3_1874x1252.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!rTwH!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd8ec8712-8f4e-4e3d-a66b-7672db8eced3_1874x1252.png 424w, https://substackcdn.com/image/fetch/$s_!rTwH!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd8ec8712-8f4e-4e3d-a66b-7672db8eced3_1874x1252.png 848w, https://substackcdn.com/image/fetch/$s_!rTwH!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd8ec8712-8f4e-4e3d-a66b-7672db8eced3_1874x1252.png 1272w, https://substackcdn.com/image/fetch/$s_!rTwH!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd8ec8712-8f4e-4e3d-a66b-7672db8eced3_1874x1252.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h4>I vibecoded an app. It worked. Then it didn&#8217;t.</h4><p>About a year ago, I launched <strong><a href="http://nasma.ai">Nasma</a></strong>, a daily habit app.<br>Not after months of planning. Not with a big team.</p><p>I tried Cursor for the first time in Jan 2025, wanted to see if I could actually build a native iOS app, and&#8230; two weeks later it was live.</p><p>I posted it on LinkedIn.<br>People downloaded it.<br>Feature requests rolled in.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!3bFB!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e9fe7e8-53cf-45c1-9585-080d977c76e0_2400x1572.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!3bFB!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e9fe7e8-53cf-45c1-9585-080d977c76e0_2400x1572.png 424w, https://substackcdn.com/image/fetch/$s_!3bFB!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e9fe7e8-53cf-45c1-9585-080d977c76e0_2400x1572.png 848w, https://substackcdn.com/image/fetch/$s_!3bFB!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e9fe7e8-53cf-45c1-9585-080d977c76e0_2400x1572.png 1272w, https://substackcdn.com/image/fetch/$s_!3bFB!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e9fe7e8-53cf-45c1-9585-080d977c76e0_2400x1572.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!3bFB!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e9fe7e8-53cf-45c1-9585-080d977c76e0_2400x1572.png" width="1456" height="954" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0e9fe7e8-53cf-45c1-9585-080d977c76e0_2400x1572.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:954,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:3189110,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://designaistack.com/i/184741770?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e9fe7e8-53cf-45c1-9585-080d977c76e0_2400x1572.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!3bFB!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e9fe7e8-53cf-45c1-9585-080d977c76e0_2400x1572.png 424w, https://substackcdn.com/image/fetch/$s_!3bFB!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e9fe7e8-53cf-45c1-9585-080d977c76e0_2400x1572.png 848w, https://substackcdn.com/image/fetch/$s_!3bFB!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e9fe7e8-53cf-45c1-9585-080d977c76e0_2400x1572.png 1272w, https://substackcdn.com/image/fetch/$s_!3bFB!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e9fe7e8-53cf-45c1-9585-080d977c76e0_2400x1572.png 1456w" sizes="100vw"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>So I did what every vibecoder does:</p><ul><li><p>ship fast</p></li><li><p>add features</p></li><li><p>keep momentum</p></li></ul><p>Today:</p><ul><li><p><strong>thousands of active users</strong></p></li><li><p>users mainly from the <strong>US, UK, India, Indonesia</strong></p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!dve_!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9745e5c9-9cd5-4314-8bec-b06713b69a97_2880x2048.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!dve_!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9745e5c9-9cd5-4314-8bec-b06713b69a97_2880x2048.png 424w, https://substackcdn.com/image/fetch/$s_!dve_!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9745e5c9-9cd5-4314-8bec-b06713b69a97_2880x2048.png 848w, https://substackcdn.com/image/fetch/$s_!dve_!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9745e5c9-9cd5-4314-8bec-b06713b69a97_2880x2048.png 1272w, https://substackcdn.com/image/fetch/$s_!dve_!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9745e5c9-9cd5-4314-8bec-b06713b69a97_2880x2048.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!dve_!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9745e5c9-9cd5-4314-8bec-b06713b69a97_2880x2048.png" width="1456" height="1035" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9745e5c9-9cd5-4314-8bec-b06713b69a97_2880x2048.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1035,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4013468,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://designaistack.com/i/184741770?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9745e5c9-9cd5-4314-8bec-b06713b69a97_2880x2048.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!dve_!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9745e5c9-9cd5-4314-8bec-b06713b69a97_2880x2048.png 424w, https://substackcdn.com/image/fetch/$s_!dve_!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9745e5c9-9cd5-4314-8bec-b06713b69a97_2880x2048.png 848w, https://substackcdn.com/image/fetch/$s_!dve_!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9745e5c9-9cd5-4314-8bec-b06713b69a97_2880x2048.png 1272w, https://substackcdn.com/image/fetch/$s_!dve_!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9745e5c9-9cd5-4314-8bec-b06713b69a97_2880x2048.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Except retention was bad.</p><p>After <strong>Day 14</strong>, only <strong>~5%</strong> of users came back.</p><p>That&#8217;s when I stopped shipping and started <em>thinking</em>.</p><div><hr></div><h3>The mistake I made (classic vibecoder move)</h3><p>I assumed:</p><blockquote><p>&#8220;If something feels slow or messy, I just need to refactor everything.&#8221;</p></blockquote><p>Wrong.</p><p>What I actually needed was <strong>clarity before code</strong>.</p><p>That&#8217;s where <strong>Cursor&#8217;s Plan Mode</strong> quietly became the most useful feature I wasn&#8217;t using properly. (Well it also didn&#8217;t exist back in Jan)</p><div><hr></div><h3>How I <em>actually</em> use Plan Mode (not the marketing version)</h3><p>I don&#8217;t use Plan Mode to &#8220;build&#8221;.</p><p>I use it to:</p>
      <p>
          <a href="https://www.designaistack.com/p/this-is-how-i-use-cursors-plan-mode">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[Meet Superdesigner, My Design OS in Cursor  — Part II]]></title><description><![CDATA[And no, its not another UI generation tool.]]></description><link>https://www.designaistack.com/p/meet-superdesigner-my-design-os-in</link><guid isPermaLink="false">https://www.designaistack.com/p/meet-superdesigner-my-design-os-in</guid><dc:creator><![CDATA[Sherizan]]></dc:creator><pubDate>Thu, 08 Jan 2026 14:10:28 GMT</pubDate><enclosure url="https://api.substack.com/feed/podcast/183904497/c33bc8a9d951cc2ae103f768b709ff28.mp3" length="0" type="audio/mpeg"/><content:encoded><![CDATA[<p>PRDs live in Confluence.<br>Research lives in Google Docs.<br>Designs live in Figma.<br>Analytics live in dashboards.<br>Feedback lives in email/messaging threads.</p><p>And the designer?<br>Manually stitching meaning together before every review.</p><p>This article is about what happens when you <strong>stop stitching</strong>.</p><h3>The idea behind Superdesigner</h3><p>Superdesigner is not a design tool.</p><p>It&#8217;s not a UI generator.<br>It&#8217;s not a Figma replacement.<br>It&#8217;s not another place to write docs.</p><p>Superdesigner is a <strong>reasoning layer</strong> that runs inside Cursor.</p><p>It connects to where real work already lives like Confluence, Notion, Figma, analytics and helps AI reason <em>across</em> them.</p><h3>&#8220;But Sherizan, I can paste all this into ChatGPT&#8221;</h3><p>I hear this a lot.</p><p>And yes you <em>can</em> paste:</p><ul><li><p>your PRD</p></li><li><p>some research</p></li><li><p>screenshots</p></li><li><p>analytics summaries</p></li></ul><p>Into ChatGPT and get feedback.</p><p>But that&#8217;s not the same thing.</p><h3>The real difference is not intelligence. It&#8217;s grounded, live context</h3><p>ChatGPT sees <strong>what you upload or paste</strong>.</p><p>Superdesigner sees:</p><ul><li><p>the actual PRD in Confluence</p></li><li><p>the latest research in Notion</p></li><li><p>the real Figma file</p></li><li><p>the real analytics funnel</p></li></ul><p>Not a summary.<br>Not a screenshot.<br>The source of truth.</p><p>And when scope changes?</p><p>You edit the PRD where it already lives, re-run the review and new gaps surface.</p><p>No copy-paste.<br>No drift.<br>No stale context.</p><h3>How Superdesigner actually works (honestly)</h3><p>One important clarification.</p><p>Superdesigner does <strong>not</strong> magically think on its own.</p><p>What it does is very deliberate.</p><p>It generates a <strong>structured, opinionated design-review prompt</strong> grounded in your real project context and passes that prompt to the Cursor AI agent.</p><p>You never write prompts.<br>You never tune roles.<br>You never say &#8220;act as a senior designer.&#8221;</p><p>You just run the workflow.</p><p>That consistency is the product.</p><h3>A real project walkthrough</h3><p>In my video, I run Superdesigner on a real project.</p><p>Here&#8217;s the actual flow.</p><h4>1. Connect the sources of truth</h4><ul><li><p>PRD &#8594; Confluence (downloaded as Markdown)</p></li><li><p>Research &#8594; Google Docs (downloaded as Markdown)</p></li><li><p>Designs &#8594; Figma (via MCP)</p></li><li><p>Analytics &#8594; Amplitude (not in demo, via MCP)</p></li></ul><p>Superdesigner pulls snapshots of these into context so Cursor can reason across them.</p><h4>2. Run the review</h4><pre><code><code>npm run review</code></code></pre><p>Superdesigner:</p><ul><li><p>generates a design-review prompt</p></li><li><p>hands it to Cursor&#8217;s AI agent</p></li><li><p>produces a <code>design-review.md</code></p></li></ul><p>No prompting.<br>No guessing.<br>Same structure every time.</p><h4>3. Read the output (this is the magic)</h4><p>The generated <code>design-review.md</code> is not UI.</p><p>It&#8217;s a <strong>design review</strong> that calls out:</p><ul><li><p>missing states (empty, error, recovery)</p></li><li><p>gaps between PRD and flows</p></li><li><p>risky assumptions</p></li><li><p>things that will come up in review</p></li><li><p>things that should come up but usually don&#8217;t</p></li></ul><p>This is what you read:</p><ul><li><p>before design review</p></li><li><p>before handoff</p></li><li><p>before launch</p></li></ul><p>This file is the product.</p><h3>Why Cursor matters</h3><p>Cursor isn&#8217;t just an editor.</p><p>It&#8217;s an <strong>agent runtime</strong>.</p><p>Because Superdesigner runs inside Cursor:</p><ul><li><p>it understands the full project context</p></li><li><p>it can re-run reviews as things change</p></li><li><p>it can chain tools together via MCP</p></li></ul><p>This is where things get interesting.</p><h3>MCP is where this becomes powerful</h3><h4>Figma MCP</h4><p>Superdesigner can:</p><ul><li><p>read Figma file structure</p></li><li><p>understand flow coverage</p></li><li><p>write <strong>high-confidence comments back to Figma</strong></p></li></ul><p>Not visual critique.<br>Not opinions.</p><p>Comments like:</p><ul><li><p>&#8220;The PRD mentions a retry state here &#8212; I don&#8217;t see one.&#8221;</p></li><li><p>&#8220;What happens if the user fails eligibility?&#8221;</p></li></ul><p>AI that speaks <strong>inside the workflow</strong>, not next to it.</p><h4>Analytics MCP (e.g. Amplitude)</h4><p>Now add reality.</p><p>Superdesigner can reason like this:</p><ul><li><p>&#8220;This step is unclear in design&#8221;</p></li><li><p><em>and</em> analytics shows drop-off here</p></li></ul><p>This isn&#8217;t design advice anymore.<br>It&#8217;s <strong>evidence-backed design reasoning</strong>.</p><h3>Why this is not a Figma plugin</h3><p>Plugins are great for:</p><ul><li><p>generating UI</p></li><li><p>manipulating canvas</p></li><li><p>speeding up execution</p></li></ul><p>Superdesigner is about:</p><ul><li><p>thinking</p></li><li><p>seeing blind spots</p></li><li><p>preventing design regret</p></li></ul><p>It doesn&#8217;t replace Figma.<br>It makes you better <em>before</em> you open it.</p><h3>Solving the blank canvas problem (what&#8217;s next)</h3><p>One of the hardest moments in design is the start.</p><p>No screens.<br>No flows.<br>Just a rough PRD and some research.</p><p>Superdesigner will evolve to support this cold start:</p><ul><li><p>connect to fundamental research</p></li><li><p>read a rough PRD</p></li><li><p>generate:</p><ul><li><p>user flows</p></li><li><p>state outlines</p></li><li><p>screen structure (not UI)</p></li></ul></li></ul><p>From there, plugins and tools (e.g. Figma outline generators like CTTF-style workflows) can push that structure back into Figma.</p><p>Designers don&#8217;t start from a blank canvas.<br>They start from clarity.</p><h3>What Superdesigner is (and isn&#8217;t)</h3><p>It <strong>is</strong>:</p><ul><li><p>a second brain for designers</p></li><li><p>a repeatable design review system</p></li><li><p>a reasoning layer across tools</p></li></ul><p>It <strong>is not</strong>:</p><ul><li><p>a UI generator</p></li><li><p>a design replacement</p></li><li><p>another dashboard</p></li></ul><h3>Why I&#8217;m building this in public</h3><p>Because I&#8217;m already using it.</p><p>Before reviews.<br>Before handoff.<br>Before launch.</p><p>And every time, it catches something small that would&#8217;ve turned into a big conversation later.</p><p>That&#8217;s the value.</p><blockquote><p>If you have a design review this week, run this once before it.</p></blockquote><p>You can clone it entirely free and customise it however you want at <strong><a href="http://superdesigner.ai">superdesigner.ai</a></strong></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!fuCG!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8f88c36-646a-4a7b-a124-50ef2499502f_3840x2010.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!fuCG!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8f88c36-646a-4a7b-a124-50ef2499502f_3840x2010.png 424w, https://substackcdn.com/image/fetch/$s_!fuCG!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8f88c36-646a-4a7b-a124-50ef2499502f_3840x2010.png 848w, https://substackcdn.com/image/fetch/$s_!fuCG!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8f88c36-646a-4a7b-a124-50ef2499502f_3840x2010.png 1272w, https://substackcdn.com/image/fetch/$s_!fuCG!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8f88c36-646a-4a7b-a124-50ef2499502f_3840x2010.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!fuCG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8f88c36-646a-4a7b-a124-50ef2499502f_3840x2010.png" width="1456" height="762" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b8f88c36-646a-4a7b-a124-50ef2499502f_3840x2010.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:762,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:7501625,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://designaistack.com/i/183904497?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8f88c36-646a-4a7b-a124-50ef2499502f_3840x2010.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!fuCG!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8f88c36-646a-4a7b-a124-50ef2499502f_3840x2010.png 424w, https://substackcdn.com/image/fetch/$s_!fuCG!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8f88c36-646a-4a7b-a124-50ef2499502f_3840x2010.png 848w, https://substackcdn.com/image/fetch/$s_!fuCG!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8f88c36-646a-4a7b-a124-50ef2499502f_3840x2010.png 1272w, https://substackcdn.com/image/fetch/$s_!fuCG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8f88c36-646a-4a7b-a124-50ef2499502f_3840x2010.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p>]]></content:encoded></item><item><title><![CDATA[Cursor Is My Design OS Now]]></title><description><![CDATA[When PRDs, Figma, and analytics start talking to each other]]></description><link>https://www.designaistack.com/p/how-i-turned-cursor-into-a-design</link><guid isPermaLink="false">https://www.designaistack.com/p/how-i-turned-cursor-into-a-design</guid><dc:creator><![CDATA[Sherizan]]></dc:creator><pubDate>Wed, 07 Jan 2026 01:42:48 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!RSOj!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccd80381-84e5-4afa-9e18-c109eca2bd3f_1680x1200.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!RSOj!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccd80381-84e5-4afa-9e18-c109eca2bd3f_1680x1200.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!RSOj!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccd80381-84e5-4afa-9e18-c109eca2bd3f_1680x1200.png 424w, https://substackcdn.com/image/fetch/$s_!RSOj!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccd80381-84e5-4afa-9e18-c109eca2bd3f_1680x1200.png 848w, https://substackcdn.com/image/fetch/$s_!RSOj!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccd80381-84e5-4afa-9e18-c109eca2bd3f_1680x1200.png 1272w, https://substackcdn.com/image/fetch/$s_!RSOj!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccd80381-84e5-4afa-9e18-c109eca2bd3f_1680x1200.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!RSOj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccd80381-84e5-4afa-9e18-c109eca2bd3f_1680x1200.png" width="1456" height="1040" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ccd80381-84e5-4afa-9e18-c109eca2bd3f_1680x1200.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1040,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4814406,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://designaistack.com/i/183739604?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccd80381-84e5-4afa-9e18-c109eca2bd3f_1680x1200.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!RSOj!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccd80381-84e5-4afa-9e18-c109eca2bd3f_1680x1200.png 424w, https://substackcdn.com/image/fetch/$s_!RSOj!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccd80381-84e5-4afa-9e18-c109eca2bd3f_1680x1200.png 848w, https://substackcdn.com/image/fetch/$s_!RSOj!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccd80381-84e5-4afa-9e18-c109eca2bd3f_1680x1200.png 1272w, https://substackcdn.com/image/fetch/$s_!RSOj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccd80381-84e5-4afa-9e18-c109eca2bd3f_1680x1200.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>If you&#8217;ve reviewed enough designs, you know the moment. The screens are polished. The flows look reasonable. The prototype &#8220;works.&#8221; And yet.. during review.. small things begin to surface. An edge case no one considered. A missing empty state. A flow that technically connects but doesn&#8217;t quite make sense when you say it out loud. A requirement that everyone thought they understood but didn&#8217;t.</p><p>The sprint slows down. Conversations stretch. Designers pissed.</p><p>This doesn&#8217;t happen because we aren&#8217;t careful. It happens because design review today is built on a fragile assumption: that looking at screens is enough to understand intent.</p><p>It isn&#8217;t.</p><h2>The real failure mode of design review</h2><p>In most teams, design work is fragmented by default.</p><p>Product requirements live in documents or PDFs. Research lives in decks. Designs live in Figma. Feedback lives in comments. Analytics lives somewhere else entirely. And most of the time, decisions were made in meetings that you didn&#8217;t attend.</p><p>When review time comes, we open Figma and try to reconstruct the story in our heads. We rely what we remembered happen. We rely on trust that nothing important was lost along the way.</p><p>I wasn&#8217;t reviewing intent. I was reviewing screenshots.</p><h2>Why AI hasn&#8217;t meaningfully helped (yet)</h2><p>Over the past year, we&#8217;ve seen an explosion of &#8220;AI for designers&#8221; tools. Most of them promise some variation of speed: faster screens, faster layouts, faster execution.</p><p>But review isn&#8217;t about speed. It&#8217;s about completeness.</p><p>The hardest part of design review isn&#8217;t drawing the UI. It&#8217;s answering quieter questions:<br>Did we design all the states? Did we account for failure? Does this flow actually satisfy the original intent? Did research insights make it into the final decisions?</p><p>AI struggles here because it&#8217;s usually given only the output aka the screens and without the inputs that shaped them. Without access to intent, AI can only guess.</p><p>Context isn&#8217;t a nice-to-have for review. It&#8217;s the entire job.</p><h2>A different approach</h2><p>Instead of building another web app or Figma plugin, I tried something simpler.</p><p>I turned Cursor into my design review workspace.</p><p>Cursor already has everything review needs: files, folders, long-form context, and agents that can reason across documents. More importantly, it&#8217;s already where I think when I&#8217;m trying to understand a system.</p><p>So I built <strong><a href="http://superdesigner.ai">Superdesigner.ai</a> </strong>as a lightweight, local workflow.</p><p>Not a product that generates UI. Not a tool that critiques visual style. But a system that reviews design intent by reading the same artifacts my colleagues rely on just more consistently and on-demand.</p><h2>What Superdesigner actually does</h2><p>Here&#8217;s a demo of how it works:</p><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;dc6c49a5-bb7d-4096-b1b0-8eb866cd4360&quot;,&quot;duration&quot;:null}"></div><div><hr></div><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.designaistack.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Design AI Stack is a reader-supported publication. To receive new posts and support my work, consider subscribing por favor.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><div><hr></div><p>At its core, Superdesigner reads three things: the PRD, the research, and the Figma link.</p><p>From that, it produces a structured design review. It reconstructs the intended user flow. It generates a checklist of expected screens. It highlights missing states like empty, loading, error, recovery. It surfaces edge cases described in the PRD that never made it into design.</p><p>It generates calm, specific comments that can be posted directly into Figma, grounded in intent rather than opinion.</p><p>And finally, the icing on the cake. It creates a Figma Make prompt to generate a new prototype with the proposed solutions baked in. Almost Black Mirror-ish. </p><p>It doesn&#8217;t judge aesthetics. It doesn&#8217;t argue taste. It answers a simpler question: <em>is this design complete relative to what we said we were building?</em></p><h2>The shift this enables</h2><p>Design review shouldn&#8217;t start in Figma.</p><p>It should start with intent.</p><p>When intent is explicit and traceable, visual critique becomes easier and more productive. Conversations move from &#8220;I feel like something&#8217;s missing&#8221; to &#8220;this requirement hasn&#8217;t been addressed yet.&#8221;</p><p>Superdesigner doesn&#8217;t replace designers. It reduces design regret, the kind that shows up late, costs time, and erodes trust.</p><h2>Why this works inside Cursor</h2><p>Cursor isn&#8217;t just an editor. It&#8217;s a thinking environment.</p><p>By keeping PRDs, research, review prompts, and outputs in one place, designers stay in flow. There are no dashboards to manage, no accounts to create, no abstraction layers to learn. Just files and agents doing their job.</p><p>That constraint is intentional. Review works best when it&#8217;s quiet, focused, and grounded.</p><h2>How I&#8217;m sharing this</h2><p>I&#8217;m open-sourcing Superdesigner AI as a template repository.</p><p>You clone it, star it, run it locally, and test it on a real project. I recommend starting small like one PRD, one flow, one review. Judge the feedback. Test different models. </p><p>See what it catches. More importantly, see what it misses.</p><p>That feedback is the point.</p><p>Got a design review or critique this week? Run this once and you&#8217;re set!</p><p>&#128073; <a href="https://github.com/sherizan/superdesigner-ai">https://github.com/sherizan/superdesigner-ai</a></p><h2>Who this is for</h2><p>This is for designers who care about craft, design managers reviewing multiple projects, founding designers balancing strategy and execution, and teams shipping fast with AI in the loop.</p><p>If you&#8217;ve ever looked at a design and thought, <em>this seems fine, but something feels off</em>, this tool is built for that moment.</p><h2>What&#8217;s next</h2><p>I&#8217;ll follow this up with a live YouTube build, deeper workflows that connect analytics (Amplitude MCP) before it generates the final design report (now that&#8217;s some Black Mirror stuff right there), and thoughts on how we can evolve this into a practice for modern design teams.</p><p>For now, try it. Break it. Tell me what it gets wrong.</p><p>That&#8217;s how this becomes useful.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!8vFj!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8fd21b3e-d5e9-469b-97fb-f00c66414d9d_3840x2010.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!8vFj!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8fd21b3e-d5e9-469b-97fb-f00c66414d9d_3840x2010.png 424w, https://substackcdn.com/image/fetch/$s_!8vFj!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8fd21b3e-d5e9-469b-97fb-f00c66414d9d_3840x2010.png 848w, https://substackcdn.com/image/fetch/$s_!8vFj!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8fd21b3e-d5e9-469b-97fb-f00c66414d9d_3840x2010.png 1272w, https://substackcdn.com/image/fetch/$s_!8vFj!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8fd21b3e-d5e9-469b-97fb-f00c66414d9d_3840x2010.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!8vFj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8fd21b3e-d5e9-469b-97fb-f00c66414d9d_3840x2010.png" width="1456" height="762" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8fd21b3e-d5e9-469b-97fb-f00c66414d9d_3840x2010.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:762,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:7501625,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://designaistack.com/i/183739604?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8fd21b3e-d5e9-469b-97fb-f00c66414d9d_3840x2010.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!8vFj!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8fd21b3e-d5e9-469b-97fb-f00c66414d9d_3840x2010.png 424w, https://substackcdn.com/image/fetch/$s_!8vFj!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8fd21b3e-d5e9-469b-97fb-f00c66414d9d_3840x2010.png 848w, https://substackcdn.com/image/fetch/$s_!8vFj!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8fd21b3e-d5e9-469b-97fb-f00c66414d9d_3840x2010.png 1272w, https://substackcdn.com/image/fetch/$s_!8vFj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8fd21b3e-d5e9-469b-97fb-f00c66414d9d_3840x2010.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><div class="captioned-button-wrap" data-attrs="{&quot;url&quot;:&quot;https://www.designaistack.com/p/how-i-turned-cursor-into-a-design?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="CaptionedButtonToDOM"><div class="preamble"><p class="cta-caption">Thanks for reading Design AI Stack! This post is public so feel free to share it.</p></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.designaistack.com/p/how-i-turned-cursor-into-a-design?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.designaistack.com/p/how-i-turned-cursor-into-a-design?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Share</span></a></p></div><p></p>]]></content:encoded></item><item><title><![CDATA[How I Used Gemini and Reddit to Find My Next Build]]></title><description><![CDATA[Using Gemini Deep Research to uncover real user pain points and Cursor to build the solution]]></description><link>https://www.designaistack.com/p/how-i-used-gemini-and-reddit-to-find</link><guid isPermaLink="false">https://www.designaistack.com/p/how-i-used-gemini-and-reddit-to-find</guid><dc:creator><![CDATA[Sherizan]]></dc:creator><pubDate>Wed, 31 Dec 2025 10:47:27 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!8AD3!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9c4d4004-4dea-49d0-9481-5478ef117f64_840x600.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!8AD3!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9c4d4004-4dea-49d0-9481-5478ef117f64_840x600.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!8AD3!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9c4d4004-4dea-49d0-9481-5478ef117f64_840x600.png 424w, https://substackcdn.com/image/fetch/$s_!8AD3!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9c4d4004-4dea-49d0-9481-5478ef117f64_840x600.png 848w, https://substackcdn.com/image/fetch/$s_!8AD3!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9c4d4004-4dea-49d0-9481-5478ef117f64_840x600.png 1272w, https://substackcdn.com/image/fetch/$s_!8AD3!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9c4d4004-4dea-49d0-9481-5478ef117f64_840x600.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!8AD3!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9c4d4004-4dea-49d0-9481-5478ef117f64_840x600.png" width="840" height="600" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9c4d4004-4dea-49d0-9481-5478ef117f64_840x600.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:600,&quot;width&quot;:840,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:316317,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://designaistack.com/i/178925121?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9c4d4004-4dea-49d0-9481-5478ef117f64_840x600.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!8AD3!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9c4d4004-4dea-49d0-9481-5478ef117f64_840x600.png 424w, https://substackcdn.com/image/fetch/$s_!8AD3!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9c4d4004-4dea-49d0-9481-5478ef117f64_840x600.png 848w, https://substackcdn.com/image/fetch/$s_!8AD3!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9c4d4004-4dea-49d0-9481-5478ef117f64_840x600.png 1272w, https://substackcdn.com/image/fetch/$s_!8AD3!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9c4d4004-4dea-49d0-9481-5478ef117f64_840x600.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>I&#8217;ve been genuinely impressed with Google Gemini lately.</p><p>I&#8217;ve been testing their Deep Research feature for a while, and it&#8217;s surprisingly good at understanding context not just keywords. It doesn&#8217;t just scrape the web.. it actually knows where to look.</p><p>Including Reddit.</p><p>And if you want to understand what designers actually complain about, Reddit is where the unfiltered truth lives.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!3MD4!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71fddf85-93fa-4d18-9e6c-27e64dbee51f_1874x1252.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!3MD4!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71fddf85-93fa-4d18-9e6c-27e64dbee51f_1874x1252.png 424w, https://substackcdn.com/image/fetch/$s_!3MD4!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71fddf85-93fa-4d18-9e6c-27e64dbee51f_1874x1252.png 848w, https://substackcdn.com/image/fetch/$s_!3MD4!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71fddf85-93fa-4d18-9e6c-27e64dbee51f_1874x1252.png 1272w, https://substackcdn.com/image/fetch/$s_!3MD4!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71fddf85-93fa-4d18-9e6c-27e64dbee51f_1874x1252.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!3MD4!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71fddf85-93fa-4d18-9e6c-27e64dbee51f_1874x1252.png" width="1456" height="973" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/71fddf85-93fa-4d18-9e6c-27e64dbee51f_1874x1252.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:973,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:204583,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://designaistack.com/i/178925121?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71fddf85-93fa-4d18-9e6c-27e64dbee51f_1874x1252.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!3MD4!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71fddf85-93fa-4d18-9e6c-27e64dbee51f_1874x1252.png 424w, https://substackcdn.com/image/fetch/$s_!3MD4!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71fddf85-93fa-4d18-9e6c-27e64dbee51f_1874x1252.png 848w, https://substackcdn.com/image/fetch/$s_!3MD4!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71fddf85-93fa-4d18-9e6c-27e64dbee51f_1874x1252.png 1272w, https://substackcdn.com/image/fetch/$s_!3MD4!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71fddf85-93fa-4d18-9e6c-27e64dbee51f_1874x1252.png 1456w" sizes="100vw"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div><hr></div><h3>The Goal</h3><p>I had two goals going into this:</p><ol><li><p>Learn how to build a<strong> Figma plugin</strong></p></li><li><p>Figure out <strong>real pain points Figma users are facing today</strong></p></li></ol><p>Not vibes.<br>Not Twitter hot takes.<br>Real frustrations, repeated by real users.</p><p>So I decided to put Gemini to work.</p><h3>The Prompt I Gave Gemini</h3><p>Here&#8217;s the exact prompt I used:</p>
      <p>
          <a href="https://www.designaistack.com/p/how-i-used-gemini-and-reddit-to-find">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[Static Prototypes Are Lying to You]]></title><description><![CDATA[A practical, start-to-finish breakdown of my AI-powered workflow: Figma MCP &#8594; Cursor &#8594; Production-ready UI.]]></description><link>https://www.designaistack.com/p/skip-prototyping-build-react-native</link><guid isPermaLink="false">https://www.designaistack.com/p/skip-prototyping-build-react-native</guid><dc:creator><![CDATA[Sherizan]]></dc:creator><pubDate>Tue, 16 Dec 2025 09:59:00 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!hUKT!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F417249c2-7716-4fdf-b772-b05997f0a2e4_3268x2450.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>We&#8217;re officially in the era where design systems can build apps not designers, not engineers, but the actual system itself.</p><p>And the trio that unlocked it for me is:</p><p>Design Tokens &#8594; Figma MCP &#8594; Cursor.</p><p>This workflow completely removed the &#8220;prototype first&#8221; mindset and replaced it with something faster:</p><p>Design &#8594; Prompt &#8594; Build &#8594; Test.</p><p>No static flows.No endless handoff meetings. And zero guesswork for how something should feel on mobile.</p><p>Let&#8217;s break down exactly how I do it. </p><h3>1. Start With a Clean Figma File</h3><p>Here&#8217;s what we are going to build today:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!hUKT!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F417249c2-7716-4fdf-b772-b05997f0a2e4_3268x2450.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!hUKT!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F417249c2-7716-4fdf-b772-b05997f0a2e4_3268x2450.png 424w, https://substackcdn.com/image/fetch/$s_!hUKT!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F417249c2-7716-4fdf-b772-b05997f0a2e4_3268x2450.png 848w, https://substackcdn.com/image/fetch/$s_!hUKT!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F417249c2-7716-4fdf-b772-b05997f0a2e4_3268x2450.png 1272w, https://substackcdn.com/image/fetch/$s_!hUKT!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F417249c2-7716-4fdf-b772-b05997f0a2e4_3268x2450.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!hUKT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F417249c2-7716-4fdf-b772-b05997f0a2e4_3268x2450.png" width="1456" height="1092" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/417249c2-7716-4fdf-b772-b05997f0a2e4_3268x2450.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1092,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:614055,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://designaistack.com/i/181231886?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F417249c2-7716-4fdf-b772-b05997f0a2e4_3268x2450.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!hUKT!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F417249c2-7716-4fdf-b772-b05997f0a2e4_3268x2450.png 424w, https://substackcdn.com/image/fetch/$s_!hUKT!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F417249c2-7716-4fdf-b772-b05997f0a2e4_3268x2450.png 848w, https://substackcdn.com/image/fetch/$s_!hUKT!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F417249c2-7716-4fdf-b772-b05997f0a2e4_3268x2450.png 1272w, https://substackcdn.com/image/fetch/$s_!hUKT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F417249c2-7716-4fdf-b772-b05997f0a2e4_3268x2450.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>I prepared two screens (one default state &amp; one end state).</p><p>Here&#8217;s the baseline checklist I follow:</p><ul><li><p>Auto Layout everywhere</p></li><li><p>All colors, spacing, radii, typography = tokens</p></li><li><p>Real variants, not duplicates</p></li><li><p>Logical naming: Button / Primary / Large</p></li><li><p>No ghost frames</p></li><li><p>No random 17px text sizes that &#8220;felt right at the time&#8221;</p></li></ul><p>Because whatever is in Figma&#8230; becomes your code.</p><h3>2. Activate Figma MCP (Your Design System Becomes an API)</h3><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!53Am!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F69c82f26-8702-4c4c-a728-c1e1afc65b2e_3840x2160.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!53Am!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F69c82f26-8702-4c4c-a728-c1e1afc65b2e_3840x2160.png 424w, https://substackcdn.com/image/fetch/$s_!53Am!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F69c82f26-8702-4c4c-a728-c1e1afc65b2e_3840x2160.png 848w, https://substackcdn.com/image/fetch/$s_!53Am!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F69c82f26-8702-4c4c-a728-c1e1afc65b2e_3840x2160.png 1272w, https://substackcdn.com/image/fetch/$s_!53Am!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F69c82f26-8702-4c4c-a728-c1e1afc65b2e_3840x2160.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!53Am!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F69c82f26-8702-4c4c-a728-c1e1afc65b2e_3840x2160.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/69c82f26-8702-4c4c-a728-c1e1afc65b2e_3840x2160.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4314853,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://designaistack.com/i/181231886?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F69c82f26-8702-4c4c-a728-c1e1afc65b2e_3840x2160.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!53Am!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F69c82f26-8702-4c4c-a728-c1e1afc65b2e_3840x2160.png 424w, https://substackcdn.com/image/fetch/$s_!53Am!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F69c82f26-8702-4c4c-a728-c1e1afc65b2e_3840x2160.png 848w, https://substackcdn.com/image/fetch/$s_!53Am!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F69c82f26-8702-4c4c-a728-c1e1afc65b2e_3840x2160.png 1272w, https://substackcdn.com/image/fetch/$s_!53Am!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F69c82f26-8702-4c4c-a728-c1e1afc65b2e_3840x2160.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>This is where things get interesting.</p><p>Figma MCP turns your file into something AI tools can query:</p><ul><li><p>Tokens</p></li><li><p>Components</p></li><li><p>Variants</p></li><li><p>Layer structure</p></li><li><p>Metadata</p></li></ul><p>Cursor can literally ask Figma:</p><blockquote><p>&#8220;Give me the real Button component with real spacing, real radius, and the Light/Dark tokens.&#8221;</p></blockquote><p>It&#8217;s API-level access to your design system.</p><p>This is the moment your design file stops being &#8220;a handoff document&#8221; and starts becoming infrastructure.</p><h3>3. Cursor Generates a Full Design System Folder</h3><p>Before any UI is built, Cursor does something magical:</p><p>It creates a full folder like this:</p><pre><code>design-system/
  tokens.json</code></pre><p>Clean, typed, structured.</p><p>This is the part that feels like cheating:</p><p>Your design system is now real JSON.<br>Not manually written.<br>Not reinvented.</p><p>Generated straight from Figma through MCP.</p><p>And Cursor will reference these tokens for every screen you build.</p><p>That&#8217;s where Cursor Rules come in.</p><p>Create a new rule under .cursor/rules</p><pre><code># Theme Rules

You are building a React Native Expo app.

- Always use tokens from `design-system/tokens.json` for colors, spacing, radius, typography.
- Never hardcode hex colors or random spacing if a token exists.</code></pre><h3>4. Skip Prototyping &#8212; Go Straight to Building in Cursor</h3><p>This is where the workflow becomes addictive.</p><p>Traditionally, you&#8217;d spend days:</p><ul><li><p>mapping flows,</p></li><li><p>designing static screens,</p></li><li><p>prototyping interactions,</p></li><li><p>presenting it all,</p></li><li><p>revising,</p></li><li><p>re-presenting&#8230;</p></li></ul><p><em><strong>But with MCP + Cursor: the build IS the prototype.</strong></em></p><p>You can actually feel the UI on mobile instead of imagining it.</p><p>For example:</p><p>In my recent speed run, I built:</p><ul><li><p>Profile &#8594; QR Code navigation</p></li><li><p>Plus &#8594; Close animated button</p></li><li><p>5 mini icons fading in sequentially</p></li><li><p>Real touch interactions</p></li><li><p>True mobile motion</p></li><li><p>Zero manual code from me</p></li></ul><p>Cursor built everything from my prompts + tokens</p><p>The results look and behave better than any Figma prototype because&#8230; they&#8217;re not prototypes.</p><p>They&#8217;re real mobile interactions.</p><h3>5. The Prompt That Drives Everything</h3><p>Because MCP exposes your design system, your prompts don&#8217;t need to be verbose. They just need to be structured.</p><p>Here&#8217;s my prompt:</p>
      <p>
          <a href="https://www.designaistack.com/p/skip-prototyping-build-react-native">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[How I build a reusable UI Library on Figma Make]]></title><description><![CDATA[So you can have reusable components across your Make projects]]></description><link>https://www.designaistack.com/p/how-i-build-a-reusable-ui-library</link><guid isPermaLink="false">https://www.designaistack.com/p/how-i-build-a-reusable-ui-library</guid><dc:creator><![CDATA[Sherizan]]></dc:creator><pubDate>Tue, 02 Dec 2025 15:58:17 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/b45a4fcc-03f2-4b8f-9fde-d4e84485db40_840x600.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!GrEp!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0da5364b-76c5-4765-b67a-8fb5970db894_840x600.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!GrEp!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0da5364b-76c5-4765-b67a-8fb5970db894_840x600.png 424w, https://substackcdn.com/image/fetch/$s_!GrEp!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0da5364b-76c5-4765-b67a-8fb5970db894_840x600.png 848w, https://substackcdn.com/image/fetch/$s_!GrEp!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0da5364b-76c5-4765-b67a-8fb5970db894_840x600.png 1272w, https://substackcdn.com/image/fetch/$s_!GrEp!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0da5364b-76c5-4765-b67a-8fb5970db894_840x600.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!GrEp!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0da5364b-76c5-4765-b67a-8fb5970db894_840x600.png" width="840" height="600" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0da5364b-76c5-4765-b67a-8fb5970db894_840x600.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:600,&quot;width&quot;:840,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:110468,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://sherizan.substack.com/i/180511872?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0da5364b-76c5-4765-b67a-8fb5970db894_840x600.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!GrEp!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0da5364b-76c5-4765-b67a-8fb5970db894_840x600.png 424w, https://substackcdn.com/image/fetch/$s_!GrEp!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0da5364b-76c5-4765-b67a-8fb5970db894_840x600.png 848w, https://substackcdn.com/image/fetch/$s_!GrEp!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0da5364b-76c5-4765-b67a-8fb5970db894_840x600.png 1272w, https://substackcdn.com/image/fetch/$s_!GrEp!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0da5364b-76c5-4765-b67a-8fb5970db894_840x600.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Figma Make is great at generating components but terrible at reusing them across projects.</p><p>So I flipped the workflow.</p><p>Build everything once in Make, push to GitHub, then pull it into every new project with a single prompt.</p><p>It works beautifully.</p><h3>The Actual Workflow (The One You Came Here For)</h3><p><strong>Step 1: Open new Make file</strong></p><pre><code><code>Prompt:

Create a UI Component Library with reusable components for Make prototypes.

Start with a base layout and we can add 1 component after.</code></code></pre><ul><li><p>Design your components.</p></li><li><p>Test them.</p></li><li><p>Swipe them.</p></li><li><p>Break them.</p></li><li><p>Fix them.</p></li></ul><p>Reach that moment when they finally feel &#8220;keeper&#8221; quality.</p><p><strong>Step 2: Push them to GitHub</strong></p><p>Here&#8217;s an example of a ToDo card component that I&#8217;d like to reuse.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!UG1v!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F87c98219-9933-4cdb-a5f1-c47bf622f768_1200x852.gif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!UG1v!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F87c98219-9933-4cdb-a5f1-c47bf622f768_1200x852.gif 424w, https://substackcdn.com/image/fetch/$s_!UG1v!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F87c98219-9933-4cdb-a5f1-c47bf622f768_1200x852.gif 848w, https://substackcdn.com/image/fetch/$s_!UG1v!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F87c98219-9933-4cdb-a5f1-c47bf622f768_1200x852.gif 1272w, https://substackcdn.com/image/fetch/$s_!UG1v!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F87c98219-9933-4cdb-a5f1-c47bf622f768_1200x852.gif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!UG1v!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F87c98219-9933-4cdb-a5f1-c47bf622f768_1200x852.gif" width="1200" height="852" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/87c98219-9933-4cdb-a5f1-c47bf622f768_1200x852.gif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:852,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:402378,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/gif&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://sherizan.substack.com/i/180511872?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F87c98219-9933-4cdb-a5f1-c47bf622f768_1200x852.gif&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!UG1v!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F87c98219-9933-4cdb-a5f1-c47bf622f768_1200x852.gif 424w, https://substackcdn.com/image/fetch/$s_!UG1v!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F87c98219-9933-4cdb-a5f1-c47bf622f768_1200x852.gif 848w, https://substackcdn.com/image/fetch/$s_!UG1v!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F87c98219-9933-4cdb-a5f1-c47bf622f768_1200x852.gif 1272w, https://substackcdn.com/image/fetch/$s_!UG1v!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F87c98219-9933-4cdb-a5f1-c47bf622f768_1200x852.gif 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Yeah. Literally export the component code, drop it into a GitHub repo, and commit. Let&#8217;s ensure its fully portable using your own design system CSS variables.</p><pre><code>Prompt:

Before pushing to Github, ensure it is reusable and cleaned up for other projects to use
</code></pre><p>Your folder structure can look like this:</p><pre><code>/components
  /cards
    ToDoCard.tsx &lt;-- this is what we will commit to Github</code></pre><p>Now you have a real design system. <br>Version controlled. <br>Portable. <br>Future proof.</p><p><strong>Step 3: Pull components from GitHub in any new Make file</strong></p><p>Go ahead and create a new Make file or go to your existing project.</p><p>This is the magic line:</p>
      <p>
          <a href="https://www.designaistack.com/p/how-i-build-a-reusable-ui-library">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[How I Built A Website Without Figma.]]></title><description><![CDATA[Watch now | How AI workflows are replacing the traditional design &#8594; build pipeline]]></description><link>https://www.designaistack.com/p/how-to-build-a-landing-page-without</link><guid isPermaLink="false">https://www.designaistack.com/p/how-to-build-a-landing-page-without</guid><dc:creator><![CDATA[Sherizan]]></dc:creator><pubDate>Tue, 02 Dec 2025 07:39:56 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/36d75eb8-2796-4830-bbfe-4d56dc337d45_840x600.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><strong>Watch the final results on my channel: <a href="https://youtu.be/UoRoIjEa9PA?si=G1Q_rUhdSkN00RRy">YT @sherizan</a></strong></p><div><hr></div><p>There was a time when every new idea started in Figma. </p><p>Open a frame. <br>Drop a layout grid. <br>Throw rectangles everywhere. <br>Try a font. <br>Undo. Redo. Undo again.</p><p>This week, I tried something different. I started with ChatGPT first then moving to Midjourney, a UI web library and putting it together with Cursor.</p><p>No Figma. No traditional design file.</p><p>Just prompts, components, and a browser tab.</p><p>The workflow felt natural. Faster. Lighter. Closer to how we think than how we design.</p><p>Here&#8217;s the full breakdown of how the website came together.</p><div id="youtube2-UoRoIjEa9PA" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;UoRoIjEa9PA&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/UoRoIjEa9PA?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><p><strong>1. Planning with ChatGPT</strong></p><p>Instead of wireframing, I started with a conversation.</p><p>&#8220;What&#8217;s the simplest way to build a clean landing page for my idea?&#8221;</p><p>Within seconds, I had:</p><ul><li><p>A rough site structure</p></li><li><p>A narrative flow</p></li><li><p>Suggested sections</p></li><li><p>A content outline</p></li><li><p>A quick list of supporting assets</p></li></ul><p>This is where designers forget the real shift: AI is not replacing creativity, it&#8217;s removing the friction between the idea and the first draft.</p><p>Skipping Figma at this stage made everything faster. No frames. No rulers. No component hunting.</p><p>Just intent.</p><p><strong>2. Generating the hero visuals with Midjourney</strong></p><p>Next step: the aesthetic.</p><p>I asked Midjourney for a photorealistic vibe that matches the product.</p><p>Something that would make sense as a hero background. </p><p>Here&#8217;s the prompt:</p>
      <p>
          <a href="https://www.designaistack.com/p/how-to-build-a-landing-page-without">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[You Don’t Need PRDs. Prototyping IS the PRD.]]></title><description><![CDATA[Here&#8217;s what you need to make PRD > Prototype work]]></description><link>https://www.designaistack.com/p/designers-dont-need-prds-anymore</link><guid isPermaLink="false">https://www.designaistack.com/p/designers-dont-need-prds-anymore</guid><dc:creator><![CDATA[Sherizan]]></dc:creator><pubDate>Sun, 30 Nov 2025 06:25:05 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/91dd8be3-dee0-41fa-8447-a92bad58063f_840x600.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!eF6H!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F28a34e08-6dd5-4ec2-a336-a63063c675dc_2782x1506.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!eF6H!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F28a34e08-6dd5-4ec2-a336-a63063c675dc_2782x1506.png 424w, https://substackcdn.com/image/fetch/$s_!eF6H!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F28a34e08-6dd5-4ec2-a336-a63063c675dc_2782x1506.png 848w, https://substackcdn.com/image/fetch/$s_!eF6H!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F28a34e08-6dd5-4ec2-a336-a63063c675dc_2782x1506.png 1272w, https://substackcdn.com/image/fetch/$s_!eF6H!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F28a34e08-6dd5-4ec2-a336-a63063c675dc_2782x1506.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!eF6H!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F28a34e08-6dd5-4ec2-a336-a63063c675dc_2782x1506.png" width="1456" height="788" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/28a34e08-6dd5-4ec2-a336-a63063c675dc_2782x1506.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:788,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1045408,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://sherizan.substack.com/i/179733665?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F28a34e08-6dd5-4ec2-a336-a63063c675dc_2782x1506.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!eF6H!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F28a34e08-6dd5-4ec2-a336-a63063c675dc_2782x1506.png 424w, https://substackcdn.com/image/fetch/$s_!eF6H!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F28a34e08-6dd5-4ec2-a336-a63063c675dc_2782x1506.png 848w, https://substackcdn.com/image/fetch/$s_!eF6H!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F28a34e08-6dd5-4ec2-a336-a63063c675dc_2782x1506.png 1272w, https://substackcdn.com/image/fetch/$s_!eF6H!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F28a34e08-6dd5-4ec2-a336-a63063c675dc_2782x1506.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p><strong>Note</strong>: This reflection is mainly about how I prompt when I am prototyping or exploring ideas as a designer. It is not meant for full stack apps, BMAD methods, or agentic workflows. This is just what worked for me when I wanted to move fast, get something on screen, and iterate without overthinking architecture.</p><p>When I decided to build my Make prototype, I did the most natural thing any designer-turned-builder would do. I reached for a PRD. I wrote one that looked suspiciously similar to what PMs hand over in big teams, the kind filled with motivations, user stories, goals, expected outcomes, and a slightly dramatic paragraph about why this work matters. It felt right. Familiar. Safe.</p><p>Then I dropped it into Make (even with Gemini 3 Pro).</p><p>Make did not agree.</p><p>It read my PRD like a loose set of vibes and decided to assemble something completely different, the digital equivalent of a crooked IKEA shelf someone forced together at 3AM. At one point it built screens I never asked for, skipped things I did ask for, and even invented a &#8220;coach dashboard&#8221; that came out of nowhere. It was impressive in a slightly concerning way.</p><p>It was pure HALL&#220;CIN energy. A piece of furniture that technically stands, if you squint.</p><p>That was the moment I accepted the obvious truth. The PRD was not helping. It was too narrative. Too broad. Too philosophical. It was trying to describe the world instead of what needed to exist in the next 30 minutes.</p><p>So I deleted the whole thing.</p><p>I started over with the smallest possible description I could get away with. Something so simple it almost felt like cheating. This is exactly what I wrote:</p><pre><code>Product description:
A Content Writer web app that helps you write customer responses, marketing copy for social media using botim's Tone of Voice.

Core feature:
- Show AI chat with 3 shortcut prompts
- Left panel navigation to show history of chats
- Header with botim logo

Requirements:
- Do not explain code
- Use latest Gemini 3 Pro model
- Keep it minimal, one page only for now</code></pre><p>That was it.</p><p>And suddenly everything made sense.</p><p>Make behaved like a completely different person. It built exactly what I pictured, no more and no less. The hallucinations disappeared. The phantom features stopped. The imaginary architecture decisions went silent. I finally got the small thing I actually wanted, the version I could iterate on instead of the version I had to escape from.</p><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;4c9ebe69-5ecf-4910-8f99-b84c923664ae&quot;,&quot;duration&quot;:null}"></div><p>Looking back, I am not sure why I expected a PRD to be a good starting point. It is something I am used to reading as a designer, not something I ever build from directly. A PRD is meant for alignment, justification, and context, not construction. I do not build Figma screens from PRDs either. I always start with one screen, one action, one thing the user sees. So why was I trying to make AI start from a complete narrative?</p><p>It makes more sense now. I work better when I collapse the problem into one step. Apparently AI works the same way.</p><p>There is something oddly comforting about that. Instead of trying to architect the universe in one prompt, I just let myself build the tiny version first and worry about the rest once something exists. It is the closest thing to flow I have had while building.</p><p>And honestly, the moment I stopped trying to make AI understand my entire thought process, everything became calmer. Simpler. Less dramatic.</p><p>No more HALL&#220;CIN shelves.</p><p>Just a small working app.</p><p>And a small win to build from.</p><p>If this is the new way I make things, I am fine with it.</p>]]></content:encoded></item><item><title><![CDATA[The AI Design Map: A Practical Guide for Designers into 2026]]></title><description><![CDATA[And Why One Tool Is the Endgame]]></description><link>https://www.designaistack.com/p/the-ai-design-map-every-designer</link><guid isPermaLink="false">https://www.designaistack.com/p/the-ai-design-map-every-designer</guid><dc:creator><![CDATA[Sherizan]]></dc:creator><pubDate>Sun, 23 Nov 2025 18:38:28 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!WGT2!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff13b7ee9-fa91-42b2-9d43-679b54237218_3840x2010.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!WGT2!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff13b7ee9-fa91-42b2-9d43-679b54237218_3840x2010.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!WGT2!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff13b7ee9-fa91-42b2-9d43-679b54237218_3840x2010.png 424w, https://substackcdn.com/image/fetch/$s_!WGT2!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff13b7ee9-fa91-42b2-9d43-679b54237218_3840x2010.png 848w, https://substackcdn.com/image/fetch/$s_!WGT2!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff13b7ee9-fa91-42b2-9d43-679b54237218_3840x2010.png 1272w, https://substackcdn.com/image/fetch/$s_!WGT2!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff13b7ee9-fa91-42b2-9d43-679b54237218_3840x2010.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!WGT2!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff13b7ee9-fa91-42b2-9d43-679b54237218_3840x2010.png" width="1456" height="762" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f13b7ee9-fa91-42b2-9d43-679b54237218_3840x2010.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:762,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:7868897,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://sherizan.substack.com/i/179736878?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff13b7ee9-fa91-42b2-9d43-679b54237218_3840x2010.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!WGT2!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff13b7ee9-fa91-42b2-9d43-679b54237218_3840x2010.png 424w, https://substackcdn.com/image/fetch/$s_!WGT2!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff13b7ee9-fa91-42b2-9d43-679b54237218_3840x2010.png 848w, https://substackcdn.com/image/fetch/$s_!WGT2!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff13b7ee9-fa91-42b2-9d43-679b54237218_3840x2010.png 1272w, https://substackcdn.com/image/fetch/$s_!WGT2!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff13b7ee9-fa91-42b2-9d43-679b54237218_3840x2010.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Most designers today are overwhelmed by AI and honestly, I don&#8217;t blame you.</p><p>The tools are exploding. Every week, there&#8217;s another launch that promises to replace your entire workflow. Meanwhile, you&#8217;re just trying to figure out: </p><blockquote><p><strong>How does this actually help me design better and faster?</strong></p></blockquote><p>That&#8217;s why I created <strong>The AI Design Map</strong> not to tell you what you <em>should</em> do, but to share what I&#8217;ve learned while building with these tools every day. Think of this more like a guide from a friend who&#8217;s walked the same messy path and found a few shortcuts worth sharing.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.designaistack.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.designaistack.com/subscribe?"><span>Subscribe now</span></a></p><p>Let&#8217;s break it down:</p><h3>1. The Two Modes of Design</h3><p>Before AI tools, designers naturally switched between:</p><p><strong>&#127744; Divergent mode &#8212; exploring possibilities</strong></p><p>You sketch ideas, generate directions, mood-board, draft variations.<br>It&#8217;s the playground phase.</p><p><strong>&#127919; Convergent mode &#8212; shaping the final version</strong></p><p>You refine, polish, tighten details, and move closer to the final product.</p><p>AI doesn&#8217;t change these modes it just gives us <em>better tools</em> for each one.</p><p>Understanding this is the foundation of the new design workflow.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!X55W!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67cc781f-8806-4f1d-a0eb-58ca7a8f8689_4096x2304.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!X55W!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67cc781f-8806-4f1d-a0eb-58ca7a8f8689_4096x2304.png 424w, https://substackcdn.com/image/fetch/$s_!X55W!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67cc781f-8806-4f1d-a0eb-58ca7a8f8689_4096x2304.png 848w, https://substackcdn.com/image/fetch/$s_!X55W!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67cc781f-8806-4f1d-a0eb-58ca7a8f8689_4096x2304.png 1272w, https://substackcdn.com/image/fetch/$s_!X55W!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67cc781f-8806-4f1d-a0eb-58ca7a8f8689_4096x2304.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!X55W!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67cc781f-8806-4f1d-a0eb-58ca7a8f8689_4096x2304.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/67cc781f-8806-4f1d-a0eb-58ca7a8f8689_4096x2304.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:7501811,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://sherizan.substack.com/i/179736878?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67cc781f-8806-4f1d-a0eb-58ca7a8f8689_4096x2304.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!X55W!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67cc781f-8806-4f1d-a0eb-58ca7a8f8689_4096x2304.png 424w, https://substackcdn.com/image/fetch/$s_!X55W!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67cc781f-8806-4f1d-a0eb-58ca7a8f8689_4096x2304.png 848w, https://substackcdn.com/image/fetch/$s_!X55W!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67cc781f-8806-4f1d-a0eb-58ca7a8f8689_4096x2304.png 1272w, https://substackcdn.com/image/fetch/$s_!X55W!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67cc781f-8806-4f1d-a0eb-58ca7a8f8689_4096x2304.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h3>2. The AI Tools That Belong in Each Mode</h3><p>Instead of comparing everything (&#8220;Is Cursor better than Figma Make?&#8221;), it&#8217;s more helpful to see <strong>where each tool shines in the design process.</strong></p><p>This is not a definitive list, more like a cheat sheet I wish I had earlier.</p><p><strong>&#127744; Divergent Tools: for exploring fast</strong></p><p>These tools help you generate ideas quickly without worrying too much about polish.</p><p><strong>Stitch, v0, Magic Patterns</strong></p><p>These tools are for exploding ideas. Explore fast, test ideas, generate options.</p><ul><li><p>Fast exploration</p></li><li><p>Zero friction</p></li><li><p>Great for ideation</p></li><li><p>Perfect for &#8220;show me 10 options before lunch&#8221;</p></li></ul><p>But they are not designed for long-term flows, BAU refinement, or stakeholder demos.</p><p>They&#8217;re your brainstorming buddies, not your delivery tools.</p><p><strong>Cursor</strong></p><p>Surprisingly great <em>even at the early stage</em> when you need pseudo-screens or structure.</p><p><strong>Convergent Tools: for shaping the real product</strong></p><p>When you&#8217;re ready to turn an idea into something polished and production-ready, these shine.</p><p><strong>Lovable, Replit &amp; Figma Make</strong></p><p>Specifically Make is your &#8220;okay let&#8217;s get serious&#8221; tool.</p><p>Once your direction is chosen, Make helps you:</p><ul><li><p>make a flow feel real</p></li><li><p>test with users</p></li><li><p>show PMs and founders</p></li><li><p>build BAU prototypes</p></li><li><p>visualize the 6&#8211;12 month roadmap</p></li><li><p>align everyone without writing code</p></li></ul><p>Make is not for wild exploration. It&#8217;s for precision.</p><p>This is where designers move from ideas &#8594; reality.</p><p><strong>My Top Pick: Cursor &#8594; The Only Tool That Does Both</strong></p><p>Cursor is the first tool that lets designers:</p><ul><li><p>explore UI with prompts (divergent)</p></li><li><p>refine UI and flows (convergent)</p></li><li><p>build real product code (production)</p></li></ul><p>Cursor becomes a designer&#8217;s superpower because it changes how you design. Instead of drawing rectangles and gradients, you start shaping UI with language.</p><p>Sometimes I go Stitch &#8594; Cursor.<br>Stitch helps me quickly visualise what a new app&#8217;s UX flow could look like.<br>Then I move it into Cursor for refinement, exploration, and building.</p><p>Sometimes I go Lovable &#8594; Cursor too. (Converge &#8594; Converge)<br>I keep hitting a ceiling on Lovable when it comes to more precise edits.<br>That&#8217;s where I move it into Cursor and continue refining and building.</p><h3>3. Why the Confusion Happens</h3><p>Most of the frustration comes from mixing these two modes.</p><ul><li><p>Using a convergent tool too early (e.g., polishing before exploring).</p></li><li><p>Using a divergent tool too late (e.g., generating random ideas when dev is waiting for final UI).</p></li></ul><p><strong>The fix? Match your tool to the mode you&#8217;re in.</strong><br>It sounds simple, but it completely changed how I design.</p><h3>4. How I Personally Use AI Across the Workflow</h3><p>Here&#8217;s my actual workflow not theory, just what&#8217;s been working.</p><p><strong>Step 1: Explore with Make + Gemini/ChatGPT</strong></p><p>Rough flows, ideas, UI directions.</p><p><strong>Step 2: Switch to Figma for structure</strong></p><p>Use the team&#8217;s design system, constraints, components.</p><p><strong>Step 3: Move to Cursor when ready to build</strong></p><p>This is where the product comes alive.</p><p><strong>Step 4: Iterate between Figma &#8596; Cursor</strong></p><p>This loop has become the real magic.</p><p><strong>Step 5: Ship early prototypes</strong></p><p>Because now you can.</p><p>It&#8217;s not linear but it&#8217;s fast, flexible, and future-proof.</p><h3>5. Tips for Designers Navigating the AI Era</h3><p>Here are the things I wish I knew earlier:</p><p><strong>Don&#8217;t fight the tools</strong></p><p>AI won&#8217;t replace your skills, it <em>amplifies</em> them.</p><p><strong>Use divergent tools to unblock yourself</strong></p><p>When stuck, Generate &#8594; Pick &#8594; Refine.<br>It&#8217;s wildly efficient.</p><p><strong>Your design system matters more than ever</strong></p><p>AI becomes powerful <em>only</em> when it knows your components.</p><p><strong>Learn how to write better prompts</strong></p><p>Prompting <em>is</em> the new UI skill.<br>Think of it like you&#8217;re giving instructions to a junior designer.</p><p><strong>Don&#8217;t compare tools.. combine them</strong></p><p>The winners are the designers who know how to orchestrate tools, not pick sides.</p><p><strong>Give yourself permission to explore</strong></p><p>You don&#8217;t need to be perfect on day one.<br>Just try, learn, refine.</p><h3>6. The Big Picture: Designers Are Not Being Replaced</h3><p>We&#8217;re evolving. I<strong>t&#8217;s redefining what designers can do</strong>.</p><p>More strategy.<br>More creativity.<br>More product thinking.<br>Less grunt work.</p><p>Designers who embrace this shift will have more impact than ever.</p><h3>7. You Don&#8217;t Need to Master Everything</h3><p>This map is not a prescription.<br>It&#8217;s a starting point.</p><p>Take what helps.<br>Ignore what doesn&#8217;t.<br>Adapt it to your style and your team.</p><p>And remember:<br><strong>The best designers in 2025 won&#8217;t be the ones who know every tool,<br>they&#8217;ll be the ones who know how to think, explore, and ship with AI.</strong></p><p>If you want deeper breakdowns, tutorials, and real workflows, I share them weekly on here.<br>Always happy to help designers navigate this wild new world together.</p>]]></content:encoded></item><item><title><![CDATA[How I Test Figma Make and Capture Feedback with Notion AI]]></title><description><![CDATA[A practical guide for product and designers who want real user insights, not vibes.]]></description><link>https://www.designaistack.com/p/how-to-test-your-figma-make-prototypes</link><guid isPermaLink="false">https://www.designaistack.com/p/how-to-test-your-figma-make-prototypes</guid><dc:creator><![CDATA[Sherizan]]></dc:creator><pubDate>Wed, 19 Nov 2025 17:28:06 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!LtIX!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc3d343e5-e00f-4950-9eba-038b58d0c8c4_840x600.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!LtIX!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc3d343e5-e00f-4950-9eba-038b58d0c8c4_840x600.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!LtIX!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc3d343e5-e00f-4950-9eba-038b58d0c8c4_840x600.png 424w, https://substackcdn.com/image/fetch/$s_!LtIX!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc3d343e5-e00f-4950-9eba-038b58d0c8c4_840x600.png 848w, https://substackcdn.com/image/fetch/$s_!LtIX!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc3d343e5-e00f-4950-9eba-038b58d0c8c4_840x600.png 1272w, https://substackcdn.com/image/fetch/$s_!LtIX!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc3d343e5-e00f-4950-9eba-038b58d0c8c4_840x600.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!LtIX!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc3d343e5-e00f-4950-9eba-038b58d0c8c4_840x600.png" width="840" height="600" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c3d343e5-e00f-4950-9eba-038b58d0c8c4_840x600.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:600,&quot;width&quot;:840,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:261905,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://sherizan.substack.com/i/179334731?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc3d343e5-e00f-4950-9eba-038b58d0c8c4_840x600.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!LtIX!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc3d343e5-e00f-4950-9eba-038b58d0c8c4_840x600.png 424w, https://substackcdn.com/image/fetch/$s_!LtIX!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc3d343e5-e00f-4950-9eba-038b58d0c8c4_840x600.png 848w, https://substackcdn.com/image/fetch/$s_!LtIX!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc3d343e5-e00f-4950-9eba-038b58d0c8c4_840x600.png 1272w, https://substackcdn.com/image/fetch/$s_!LtIX!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc3d343e5-e00f-4950-9eba-038b58d0c8c4_840x600.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p><strong>1. Why This Matters</strong></p><p>AI prototyping tools give you power to build interactive flows, but not to test them properly. And good user testing tools are either expensive, slow, or overkill.</p><p>This tutorial fixes that.</p><p>By the end, you&#8217;ll have a complete loop:</p><pre><code>Make prototype &#8594; Notion database &#8594; Notion AI report</code></pre><p>All you need is Make, Notion, and a small FigJam plugin.</p><p>Outcome: You will have a repeatable user testing workflow you can reuse for every prototype you build.</p><p><strong>2. What We&#8217;re Building</strong></p><p>Before diving into the steps, here&#8217;s the full workflow:</p><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;ca77273e-d757-4663-846a-e6713c950985&quot;,&quot;duration&quot;:null}"></div><p><strong>3. Prerequisites</strong></p><p>You will need:</p><ul><li><p>A Make prototype (published)</p></li><li><p>A Notion workspace</p></li><li><p>A Notion internal integration key</p></li><li><p>A Supabase account to store Notion keys</p></li></ul><p>No coding knowledge required. Just copy, paste, and follow along.</p><p><strong>4. Connect Notion using the new &#8220;Add Connectors&#8221; feature<br><br></strong>You need to set up two environment variables (secrets) for the integration to work:</p><p><strong>a. [NOTION_API_KEY]: Your Notion integration API key</strong></p><ul><li><p>Go to <a href="https://www.notion.so/my-integrations">https://www.notion.so/my-integrations</a></p></li><li><p>Create a new integration or use an existing one</p></li><li><p>Copy the &#8220;Internal Integration Token&#8221;</p></li><li><p>Paste it when prompted by the app</p></li></ul><p><strong>b. [NOTION_DATABASE_ID]: Your database ID</strong></p><ul><li><p>Open your &#8220;User Testing Findings&#8221; database in Notion</p></li><li><p>Copy the database ID from the URL (the part between the last `/` and the `?`)</p></li><li><p>Paste it when prompted on Figma chat window</p></li></ul><p><strong>c. Grant Database Access</strong></p><p>After creating/updating your Notion integration:</p><ol><li><p>Open your Notion database</p></li><li><p>Click the &#8220;...&#8221; menu in the top right</p></li><li><p>Scroll down and click &#8220;Add connections&#8221;</p></li><li><p>Select your integration from the list</p></li><li><p>Click &#8220;Confirm&#8221;</p></li></ol><p><strong>d. Supabase Secrets</strong></p><p>This is where Supabase comes in to store the keys securely. It will automatically prompt in the chat that it&#8217;s storing both variables, all you have to do is to confirm.</p><pre><code>Prompt

Save 4 pieces of information and send it to Notion &#8220;User Testing Findings&#8221;
- rating (1-5)
- comments
- timestamp
- any information you can get from device and user</code></pre><p><strong>5. Add your feedback form</strong></p><p>I created a simple &#8220;CSAT&#8221; type of feedback where users can rate between 1 to 5. If rating is below 3, it will trigger another bottom sheet to capture free text.</p><pre><code>Prompt

When user leaves a rating below 4, trigger another feedback sheet to capture the free text input.</code></pre><p><strong>6. Let Users Test Your Prototype</strong></p><p>Publish your Make prototype and share the link.</p><ul><li><p>Now try submit a rating and leave feedback.</p></li><li><p>It will generate device info automatically.</p></li><li><p>Every submission goes straight into Notion.</p></li></ul><p>Run a small test with 1&#8211;2 users and confirm entries appear in Notion.</p><p><strong>You&#8217;re Done</strong></p><p>In under 10 minutes, you built a working user testing loop:</p><ul><li><p>Make records Rating + Feedback + Device</p></li><li><p>Notion stores everything</p></li><li><p>Notion AI summarises it into insights</p></li></ul><p>No testing tools.<br>No subscriptions.<br>Just Make + Notion + AI doing the heavy lifting.</p>]]></content:encoded></item><item><title><![CDATA[Hidden Camera Hack in Figma Make]]></title><description><![CDATA[Figma Make prototypes can use the real device camera. No&#8230; Figma never mentioned it.]]></description><link>https://www.designaistack.com/p/hidden-camera-hack-in-figma-make</link><guid isPermaLink="false">https://www.designaistack.com/p/hidden-camera-hack-in-figma-make</guid><dc:creator><![CDATA[Sherizan]]></dc:creator><pubDate>Tue, 18 Nov 2025 16:40:10 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/610cff0d-28d5-4f50-a120-de38efa9892d_840x600.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!S_Mw!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff27b67f9-6299-4ec2-b4f7-1ee53787df2d_840x600.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!S_Mw!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff27b67f9-6299-4ec2-b4f7-1ee53787df2d_840x600.png 424w, https://substackcdn.com/image/fetch/$s_!S_Mw!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff27b67f9-6299-4ec2-b4f7-1ee53787df2d_840x600.png 848w, https://substackcdn.com/image/fetch/$s_!S_Mw!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff27b67f9-6299-4ec2-b4f7-1ee53787df2d_840x600.png 1272w, https://substackcdn.com/image/fetch/$s_!S_Mw!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff27b67f9-6299-4ec2-b4f7-1ee53787df2d_840x600.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!S_Mw!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff27b67f9-6299-4ec2-b4f7-1ee53787df2d_840x600.png" width="840" height="600" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f27b67f9-6299-4ec2-b4f7-1ee53787df2d_840x600.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:600,&quot;width&quot;:840,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:611693,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://sherizan.substack.com/i/179256497?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff27b67f9-6299-4ec2-b4f7-1ee53787df2d_840x600.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!S_Mw!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff27b67f9-6299-4ec2-b4f7-1ee53787df2d_840x600.png 424w, https://substackcdn.com/image/fetch/$s_!S_Mw!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff27b67f9-6299-4ec2-b4f7-1ee53787df2d_840x600.png 848w, https://substackcdn.com/image/fetch/$s_!S_Mw!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff27b67f9-6299-4ec2-b4f7-1ee53787df2d_840x600.png 1272w, https://substackcdn.com/image/fetch/$s_!S_Mw!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff27b67f9-6299-4ec2-b4f7-1ee53787df2d_840x600.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>While playing with Make, I discovered that you can access the device camera in your published Make app which means you can build fully functional scanning flows without writing code.</p><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;296bb85e-1b4f-4783-b4f1-666886c30e98&quot;,&quot;duration&quot;:null}"></div><p>Here&#8217;s the full breakdown of how the hack works.</p><p><strong>1. What This Hack Actually Unlocks</strong></p><p>Because the camera works in published Make apps, you can prototype:</p><ul><li><p>QR / barcode scanning</p></li><li><p>KYC &amp; identity checks</p></li><li><p>Ticket scanning</p></li><li><p>Payment verification</p></li><li><p>Any flow where the user points their device at something</p></li></ul><p>This is the first time designers can simulate real hardware in a no-code prototype.</p><p><strong>2. What You Need</strong></p><p>This hack only works if:</p><ul><li><p>You&#8217;ve published your Make prototype</p></li><li><p>You open the link on a real phone (not desktop)</p></li><li><p>Your flow includes a screen where Make expects a &#8220;camera view&#8221;</p></li></ul><p>The camera will not activate inside Figma Preview which is why most people don&#8217;t even know this exists.</p><p><strong>3. How the Hack Works (Step-by-Step)</strong></p><p><strong>Step 1 &#8212; Create your &#8220;Scan QR&#8221; CTA</strong></p><p>Place a button in your UI, like:</p><p>Scan QR Code</p><p>This is your entry point.</p><p><strong>Step 2 &#8212; Add a Prompt That Suggests Camera Intent</strong></p><p>This is the key part.</p><p>Make responds to intent, even if it&#8217;s not a documented feature.</p><pre><code>Prompt:

When CTA is clicked, open a camera scanning view with corner indicators.</code></pre><p>Make will generate a special &#8220;camera mode&#8221; canvas it&#8217;s not visible in the editor, but it exists in the published output.</p><p><strong>Step 3 &#8212; Add a Second Prompt for Detection</strong></p><p>Because Make reads intent, you can chain the behavior:</p><pre><code>Prompt:

When the camera detects a QR code inside the corner indicators, navigate to &lt;your page&gt;.</code></pre><p>Even though you don&#8217;t see a &#8220;QR detection&#8221; block in Make, the published app will activate the camera and fire the event.</p><p><strong>Step 4 &#8212; Publish the App</strong></p><p>This is where it comes alive.</p><ol><li><p>Click Publish</p></li><li><p>Scan the QR code on your phone</p></li><li><p>Open the app through the published link</p></li><li><p>Tap your Scan CTA</p></li></ol><p>Your camera will turn on with your UI frame on top as if this were a native app.</p><p><strong>4. Why This Hack Works</strong></p><p>Make&#8217;s runtime is built on real React Native primitives.</p><p>Camera access is already baked into the stack even if the interface doesn&#8217;t expose it yet.</p><p>When you write prompts that imply a &#8220;camera action,&#8221; Make maps that intent to its underlying native module.</p><p>So yes you&#8217;re using a feature that technically exists, just not officially offered.</p><p>You found the backdoor.</p><p><strong>5. Practical Use Cases for Designers</strong></p><p>This is insanely useful for high-fidelity prototyping:</p><ul><li><p>KYC onboarding: &#8220;Scan Emirates ID&#8221;</p></li><li><p>Fintech: &#8220;Scan card for verification&#8221;</p></li><li><p>Ride-hailing: &#8220;Scan QR to start trip&#8221;</p></li><li><p>Events: &#8220;Scan ticket to enter&#8221;</p></li><li><p>E-commerce: &#8220;Scan product to add to cart&#8221;</p></li></ul><p>Engineers and PMs will think you built a real app.</p><p><strong>6. Why This Hack Matters</strong></p><p>Designers can now test flows that were previously impossible:</p><ul><li><p>You can run real usability tests</p></li><li><p>You can validate scanning UX</p></li><li><p>You can show live hardware interactions without writing code</p></li><li><p>You can simulate KYC and verification flows before engineering starts</p></li></ul><p>This pushes Make into &#8220;functional prototype&#8221; territory.</p><p>Happy Prototyping!</p><div><hr></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.designaistack.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.designaistack.com/subscribe?"><span>Subscribe now</span></a></p><p></p><p></p><p></p>]]></content:encoded></item><item><title><![CDATA[Mastering Figma Make]]></title><description><![CDATA[A practical set of tricks to make your Figma Make prototypes feel, behave, and function like real apps.]]></description><link>https://www.designaistack.com/p/mastering-figma-make</link><guid isPermaLink="false">https://www.designaistack.com/p/mastering-figma-make</guid><dc:creator><![CDATA[Sherizan]]></dc:creator><pubDate>Mon, 17 Nov 2025 07:25:40 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/31cbb0c4-971c-4900-9bf9-24ffda21901c_420x300.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!XOXP!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fee7007c1-811a-4f88-8055-bd9264e5fa2f_840x600.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!XOXP!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fee7007c1-811a-4f88-8055-bd9264e5fa2f_840x600.png 424w, https://substackcdn.com/image/fetch/$s_!XOXP!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fee7007c1-811a-4f88-8055-bd9264e5fa2f_840x600.png 848w, https://substackcdn.com/image/fetch/$s_!XOXP!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fee7007c1-811a-4f88-8055-bd9264e5fa2f_840x600.png 1272w, https://substackcdn.com/image/fetch/$s_!XOXP!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fee7007c1-811a-4f88-8055-bd9264e5fa2f_840x600.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!XOXP!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fee7007c1-811a-4f88-8055-bd9264e5fa2f_840x600.png" width="840" height="600" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ee7007c1-811a-4f88-8055-bd9264e5fa2f_840x600.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:600,&quot;width&quot;:840,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:611455,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://sherizan.substack.com/i/179029304?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fee7007c1-811a-4f88-8055-bd9264e5fa2f_840x600.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!XOXP!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fee7007c1-811a-4f88-8055-bd9264e5fa2f_840x600.png 424w, https://substackcdn.com/image/fetch/$s_!XOXP!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fee7007c1-811a-4f88-8055-bd9264e5fa2f_840x600.png 848w, https://substackcdn.com/image/fetch/$s_!XOXP!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fee7007c1-811a-4f88-8055-bd9264e5fa2f_840x600.png 1272w, https://substackcdn.com/image/fetch/$s_!XOXP!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fee7007c1-811a-4f88-8055-bd9264e5fa2f_840x600.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>We&#8217;re diving into the essential techniques that instantly improve how you build and test with Figma Make.</p><p><strong>For paid subscribers only</strong> part of my Design and Build Playbook. This  playbook is constantly being updated.</p><p>Alright, let&#8217;s dive in.</p><p><strong>1. Preview Your Make App Like a Real App</strong></p><p>Figma&#8217;s preview window is fine for quick checks, but not when you want to test an experience properly. Here&#8217;s the workflow that makes your prototype feel like an actual shipped app.</p><p><strong>Step 1 &#8212; Publish your Make app</strong></p><p>Publish your project to generate a live URL that reflects all your logic, state, and data integrations.</p><p><strong>Step 2 &#8212; Open in Safari and add to Home Screen</strong></p><ol><li><p>Open your published URL in Safari</p></li><li><p>Tap Share &#8594; Add to Home Screen</p></li><li><p>Launch it from your home screen like a real app</p></li><li><p>Runs full screen without browser UI</p></li></ol><p><strong>Step 3 &#8212; Hide the status bar in your design</strong></p><p>On Make, prompt:</p><p>Hide the status bar on the actual mobile device</p><p>If added to your home screen, the app opens in a clean, full-screen environment by default. </p><p>Now you&#8217;re ready for testing.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!iTLu!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbba30211-a37c-45fb-b9a1-0e816e356dc5_1280x720.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!iTLu!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbba30211-a37c-45fb-b9a1-0e816e356dc5_1280x720.jpeg 424w, https://substackcdn.com/image/fetch/$s_!iTLu!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbba30211-a37c-45fb-b9a1-0e816e356dc5_1280x720.jpeg 848w, https://substackcdn.com/image/fetch/$s_!iTLu!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbba30211-a37c-45fb-b9a1-0e816e356dc5_1280x720.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!iTLu!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbba30211-a37c-45fb-b9a1-0e816e356dc5_1280x720.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!iTLu!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbba30211-a37c-45fb-b9a1-0e816e356dc5_1280x720.jpeg" width="1280" height="720" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/bba30211-a37c-45fb-b9a1-0e816e356dc5_1280x720.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:720,&quot;width&quot;:1280,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:368170,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://sherizan.substack.com/i/179029304?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbba30211-a37c-45fb-b9a1-0e816e356dc5_1280x720.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!iTLu!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbba30211-a37c-45fb-b9a1-0e816e356dc5_1280x720.jpeg 424w, https://substackcdn.com/image/fetch/$s_!iTLu!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbba30211-a37c-45fb-b9a1-0e816e356dc5_1280x720.jpeg 848w, https://substackcdn.com/image/fetch/$s_!iTLu!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbba30211-a37c-45fb-b9a1-0e816e356dc5_1280x720.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!iTLu!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbba30211-a37c-45fb-b9a1-0e816e356dc5_1280x720.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p><strong><br>2. Use the Device Camera to Scan QR Code</strong></p><p>Figma Make prototypes can access real device hardware, including the camera.</p><p>How to use it:</p>
      <p>
          <a href="https://www.designaistack.com/p/mastering-figma-make">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[Ready for Dev Is Dead. Welcome to "Ready for AI".]]></title><description><![CDATA[The design handover headache could soon be over]]></description><link>https://www.designaistack.com/p/ready-for-dev-is-dead-welcome-to</link><guid isPermaLink="false">https://www.designaistack.com/p/ready-for-dev-is-dead-welcome-to</guid><dc:creator><![CDATA[Sherizan]]></dc:creator><pubDate>Fri, 14 Nov 2025 18:51:42 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/72575017-7066-4d98-8382-18a6cd2ea381_420x300.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!WXd9!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd039cb69-cd5f-4a5d-8dd3-707256c49697_1920x1005.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!WXd9!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd039cb69-cd5f-4a5d-8dd3-707256c49697_1920x1005.png 424w, https://substackcdn.com/image/fetch/$s_!WXd9!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd039cb69-cd5f-4a5d-8dd3-707256c49697_1920x1005.png 848w, https://substackcdn.com/image/fetch/$s_!WXd9!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd039cb69-cd5f-4a5d-8dd3-707256c49697_1920x1005.png 1272w, https://substackcdn.com/image/fetch/$s_!WXd9!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd039cb69-cd5f-4a5d-8dd3-707256c49697_1920x1005.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!WXd9!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd039cb69-cd5f-4a5d-8dd3-707256c49697_1920x1005.png" width="1456" height="762" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d039cb69-cd5f-4a5d-8dd3-707256c49697_1920x1005.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:762,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1740158,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://sherizan.substack.com/i/178879328?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd039cb69-cd5f-4a5d-8dd3-707256c49697_1920x1005.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!WXd9!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd039cb69-cd5f-4a5d-8dd3-707256c49697_1920x1005.png 424w, https://substackcdn.com/image/fetch/$s_!WXd9!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd039cb69-cd5f-4a5d-8dd3-707256c49697_1920x1005.png 848w, https://substackcdn.com/image/fetch/$s_!WXd9!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd039cb69-cd5f-4a5d-8dd3-707256c49697_1920x1005.png 1272w, https://substackcdn.com/image/fetch/$s_!WXd9!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd039cb69-cd5f-4a5d-8dd3-707256c49697_1920x1005.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>A couple of months back, my team shipped the designs for a new product.</p><p>The usual ritual: end-to-end flows, 100% components, zero drifts, zero detached instances.</p><p>Everything was clean, consistent, and ready for a perfect handover to engineering.</p><p>We marked the section as <strong>&#8220;Ready for Dev.&#8221;</strong><br>High fives all around. Designers happy. Product happy.</p><p>A few days later, our frontend dev came back and said:</p><h3>&#8220;Your designs are not AI-ready&#8221;.</h3><p>&#129327; Wait, what?</p><p>Turns out our engineers were already deep into AI-assisted development.<br>Claude Sonnet vs GPT-4 debates. Cursor vs Windsurf arguments. Then Claude Code appeared like a plot twist.</p><p>Meanwhile, Figma&#8217;s stack&#8230; was not built for this world.</p><p>Ghost variants. Unnamed layers. Token inconsistencies.<br>All the things humans ignore but AI absolutely hates.</p><p>The result?<br>AI hallucinated. It misread intent. It wrote janky UI code. Eventually&#8230; engineers gave up on the design and started fixing things manually again.</p><p>For months, nothing solved it until I remembered something buried inside our Figma Enterprise plan:</p><p><strong>Code Connect.</strong></p><blockquote><p>Code Connect is a bridge between your codebase and Figma&#8217;s Dev Mode, connecting components in your repositories directly to components in your design files. When implemented, these connections enhance the <a href="https://developers.figma.com/docs/figma-mcp-server">Figma MCP server</a>&#8216;s ability to guide AI agents with more precise implementation details by giving them direct references to your actual code.</p></blockquote><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!JUk_!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9fa196e-6cbd-44f5-98ce-ca33eeaccc9a_2810x2458.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!JUk_!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9fa196e-6cbd-44f5-98ce-ca33eeaccc9a_2810x2458.png 424w, https://substackcdn.com/image/fetch/$s_!JUk_!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9fa196e-6cbd-44f5-98ce-ca33eeaccc9a_2810x2458.png 848w, https://substackcdn.com/image/fetch/$s_!JUk_!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9fa196e-6cbd-44f5-98ce-ca33eeaccc9a_2810x2458.png 1272w, https://substackcdn.com/image/fetch/$s_!JUk_!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9fa196e-6cbd-44f5-98ce-ca33eeaccc9a_2810x2458.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!JUk_!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9fa196e-6cbd-44f5-98ce-ca33eeaccc9a_2810x2458.png" width="1456" height="1274" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e9fa196e-6cbd-44f5-98ce-ca33eeaccc9a_2810x2458.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1274,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1092873,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://sherizan.substack.com/i/178879328?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9fa196e-6cbd-44f5-98ce-ca33eeaccc9a_2810x2458.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!JUk_!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9fa196e-6cbd-44f5-98ce-ca33eeaccc9a_2810x2458.png 424w, https://substackcdn.com/image/fetch/$s_!JUk_!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9fa196e-6cbd-44f5-98ce-ca33eeaccc9a_2810x2458.png 848w, https://substackcdn.com/image/fetch/$s_!JUk_!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9fa196e-6cbd-44f5-98ce-ca33eeaccc9a_2810x2458.png 1272w, https://substackcdn.com/image/fetch/$s_!JUk_!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9fa196e-6cbd-44f5-98ce-ca33eeaccc9a_2810x2458.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h3>Then came the breakthrough</h3><p>We finally decided to combine <strong>Figma Code Connect</strong> + <strong>Figma MCP</strong> together . We had to fork our existing design system, prioritized the foundation pieces like buttons, form, cards basically the components that appear in almost every flow.</p><p>The AI suddenly &#8220;understood&#8221; our design intent, things started clicking.</p><p>The components <strong>Cursor </strong>produced came straight from the connected codebase (no more regenerating new components every time).</p><p><strong>The final product:</strong></p><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;f307fbae-df64-4646-8133-1c0b46d15b0b&quot;,&quot;duration&quot;:null}"></div><h3>Why this stack just works</h3><p><strong>Reduced design inspection time</strong> AI can trace directly to source code</p><p><strong>Cleaner handoffs</strong> less context lost between design &#8596; dev</p><p><strong>Fewer UI bugs</strong> every component has a single source of truth</p><p><strong>Agent-ready components</strong> works seamlessly with Cursor, Claude Code, and beyond</p><div><hr></div><h3>How to implement this at your company?</h3><blockquote><p>Spoiler: this isn&#8217;t a technical project.<br>It&#8217;s an alignment project.</p></blockquote><p>So we got everyone in a room and asked the hard question:</p><p><em><strong>&#8220;If AI is already writing code at the speed of thought&#8230; where does design fit?&#8221;</strong></em></p><p>That&#8217;s when we acknowledged three things:</p><ul><li><p>AI saves devs time but also exposes every inconsistency.</p></li><li><p>Engineers were tired of copy-pasting Figma via &#8220;Dev Mode&#8221;.</p></li><li><p>Business cared about one thing: faster execution without compromising UI quality.</p></li></ul><p>So the mission became:</p><blockquote><p>Make our design system AI-native</p></blockquote><h3>The Reality Check: It Wasn&#8217;t Overnight</h3><p>This wasn&#8217;t a &#8220;flip Code Connect and everything magically works&#8221; story.<br>It took weeks of <em>unlearning and rebuilding</em>.</p><p>The timeline roughly looked like this:</p>
      <p>
          <a href="https://www.designaistack.com/p/ready-for-dev-is-dead-welcome-to">
              Read more
          </a>
      </p>
   ]]></content:encoded></item></channel></rss>