<?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_!tT0L!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fabd9072d-538d-4370-aabd-ba940ad00a55_1200x1200.png</url><title>Design AI Stack</title><link>https://www.designaistack.com</link></image><generator>Substack</generator><lastBuildDate>Thu, 23 Jul 2026 21:29:52 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[AI-native prototyping tools in 2026: Prototo vs Figma Make vs ProtoPie vs Origami]]></title><description><![CDATA[A new kind of design tool builds the real thing from a description instead of faking it on a canvas. Here is how the main options compare, and where each one lands on the measure that matters: native]]></description><link>https://www.designaistack.com/p/ai-native-prototyping-tools-in-2026</link><guid isPermaLink="false">https://www.designaistack.com/p/ai-native-prototyping-tools-in-2026</guid><dc:creator><![CDATA[Sherizan]]></dc:creator><pubDate>Mon, 20 Jul 2026 13:01:35 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!Vgot!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbaf8f07b-6273-47a7-856e-ea40d386bb80_1200x786.gif" 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_!Vgot!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbaf8f07b-6273-47a7-856e-ea40d386bb80_1200x786.gif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Vgot!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbaf8f07b-6273-47a7-856e-ea40d386bb80_1200x786.gif 424w, https://substackcdn.com/image/fetch/$s_!Vgot!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbaf8f07b-6273-47a7-856e-ea40d386bb80_1200x786.gif 848w, https://substackcdn.com/image/fetch/$s_!Vgot!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbaf8f07b-6273-47a7-856e-ea40d386bb80_1200x786.gif 1272w, https://substackcdn.com/image/fetch/$s_!Vgot!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbaf8f07b-6273-47a7-856e-ea40d386bb80_1200x786.gif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Vgot!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbaf8f07b-6273-47a7-856e-ea40d386bb80_1200x786.gif" width="1200" height="786" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/baf8f07b-6273-47a7-856e-ea40d386bb80_1200x786.gif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:786,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2205488,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/gif&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.designaistack.com/i/207754659?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbaf8f07b-6273-47a7-856e-ea40d386bb80_1200x786.gif&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_!Vgot!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbaf8f07b-6273-47a7-856e-ea40d386bb80_1200x786.gif 424w, https://substackcdn.com/image/fetch/$s_!Vgot!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbaf8f07b-6273-47a7-856e-ea40d386bb80_1200x786.gif 848w, https://substackcdn.com/image/fetch/$s_!Vgot!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbaf8f07b-6273-47a7-856e-ea40d386bb80_1200x786.gif 1272w, https://substackcdn.com/image/fetch/$s_!Vgot!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbaf8f07b-6273-47a7-856e-ea40d386bb80_1200x786.gif 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>Prototyping is one of the most important things I do as a designer, actually at every level even today as Chief of Design. It is where early thinking becomes something you can see, a look into the future of a product before it exists.</p><p>I use it to set a vision, and I use it to improve what already ships, to move an activation number, a retention curve, or a drop-off that will not budge. Either way the value is the same. You get to feel the thing, not just describe it.</p><p>A real prototype shows the interaction, not only the screens. How you move between them, where a gesture lands, what happens in different states. That is what makes it useful in a design crit or review because those experiences are exactly where the edge cases show up.</p><p>That is where most of today&#8217;s prototyping tools stop short. They render the screens well. The part that matters most in review, how it actually feels to move through the product on a real device, is the part they cannot fully give you yet.</p><p>I have spent months evangelizing Figma Make. I built a reusable UI library on top of it so my generated screens matched our real components, and I have written more than one piece on getting accurate work out of it.</p><p>Sometime last year, iOS 26 shipped Liquid Glass. I kept prompting for that true native feel on mobile, and I kept getting something close but not quite real. The preview is a webview. It can look like an iOS app in a screenshot. It does not move like one on a phone.</p><p>That gap between looking native and being native is what this whole category is now racing to close. I have used the main tools on real projects. Every one of them is good at the job it was built for. </p><p>Here is where each is genuinely great, and where each one stops.</p><h2>The comparison at a glance</h2><p>These are the columns I actually weigh when I pick a prototyping tool. No tool here is bad. They are built for different jobs, and the table is about fit, not a scoreboard.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!r7sr!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e097ca6-2d24-4571-a681-d0d1c53ba461_2796x1096.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!r7sr!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e097ca6-2d24-4571-a681-d0d1c53ba461_2796x1096.png 424w, https://substackcdn.com/image/fetch/$s_!r7sr!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e097ca6-2d24-4571-a681-d0d1c53ba461_2796x1096.png 848w, https://substackcdn.com/image/fetch/$s_!r7sr!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e097ca6-2d24-4571-a681-d0d1c53ba461_2796x1096.png 1272w, https://substackcdn.com/image/fetch/$s_!r7sr!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e097ca6-2d24-4571-a681-d0d1c53ba461_2796x1096.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!r7sr!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e097ca6-2d24-4571-a681-d0d1c53ba461_2796x1096.png" width="1456" height="571" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3e097ca6-2d24-4571-a681-d0d1c53ba461_2796x1096.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:571,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:106162,&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/207754659?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e097ca6-2d24-4571-a681-d0d1c53ba461_2796x1096.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_!r7sr!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e097ca6-2d24-4571-a681-d0d1c53ba461_2796x1096.png 424w, https://substackcdn.com/image/fetch/$s_!r7sr!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e097ca6-2d24-4571-a681-d0d1c53ba461_2796x1096.png 848w, https://substackcdn.com/image/fetch/$s_!r7sr!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e097ca6-2d24-4571-a681-d0d1c53ba461_2796x1096.png 1272w, https://substackcdn.com/image/fetch/$s_!r7sr!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e097ca6-2d24-4571-a681-d0d1c53ba461_2796x1096.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>Native is the column I feel most on mobile. A webview can look identical to the real thing in a still. On a device, native gestures, haptics, and scroll physics are the difference you notice in the first two seconds.</p><h2>Figma Make</h2><p>Figma Make brought prompt-to-app into the tool I already live in. You describe an interface, it writes working code, and you iterate without leaving Figma. I built a reusable UI library on top of it so its output tracked our real design system, and for web and cross-platform concepts it is fast and genuinely good.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!yAAb!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F479aeed2-db54-4a80-9f59-0d2739fadd28_1068x880.gif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!yAAb!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F479aeed2-db54-4a80-9f59-0d2739fadd28_1068x880.gif 424w, https://substackcdn.com/image/fetch/$s_!yAAb!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F479aeed2-db54-4a80-9f59-0d2739fadd28_1068x880.gif 848w, https://substackcdn.com/image/fetch/$s_!yAAb!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F479aeed2-db54-4a80-9f59-0d2739fadd28_1068x880.gif 1272w, https://substackcdn.com/image/fetch/$s_!yAAb!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F479aeed2-db54-4a80-9f59-0d2739fadd28_1068x880.gif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!yAAb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F479aeed2-db54-4a80-9f59-0d2739fadd28_1068x880.gif" width="1068" height="880" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/479aeed2-db54-4a80-9f59-0d2739fadd28_1068x880.gif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:880,&quot;width&quot;:1068,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:501190,&quot;alt&quot;:&quot;&quot;,&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%2F479aeed2-db54-4a80-9f59-0d2739fadd28_1068x880.gif&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_!yAAb!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F479aeed2-db54-4a80-9f59-0d2739fadd28_1068x880.gif 424w, https://substackcdn.com/image/fetch/$s_!yAAb!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F479aeed2-db54-4a80-9f59-0d2739fadd28_1068x880.gif 848w, https://substackcdn.com/image/fetch/$s_!yAAb!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F479aeed2-db54-4a80-9f59-0d2739fadd28_1068x880.gif 1272w, https://substackcdn.com/image/fetch/$s_!yAAb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F479aeed2-db54-4a80-9f59-0d2739fadd28_1068x880.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>Where it stops for me is native mobile. The preview runs in a webview, so with iOS 26 Liquid Glass I could not get a true native feel no matter how I prompted. That is not a knock on the tool. Web output is the right call for a lot of what I make. It is just not the native iOS reference I want to hand an engineer.</p><p><strong>Best for:</strong> Web and cross-platform concepts, and teams already standardized on Figma. It is still my default for those.</p><h2>ProtoPie</h2><p>ProtoPie is the most capable interaction tool I have used, and I have pushed it hard. At Grab I used it on a purpose-built vehicle project, simulating a driver dashboard, a rear passenger dashboard, and the passenger app, all wired together across devices with handoff sessions between them. Nothing else came close for that kind of work.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!LTyM!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F044a9ee5-3d8e-4773-a490-aaf915ba4af5_2000x1174.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!LTyM!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F044a9ee5-3d8e-4773-a490-aaf915ba4af5_2000x1174.png 424w, https://substackcdn.com/image/fetch/$s_!LTyM!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F044a9ee5-3d8e-4773-a490-aaf915ba4af5_2000x1174.png 848w, https://substackcdn.com/image/fetch/$s_!LTyM!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F044a9ee5-3d8e-4773-a490-aaf915ba4af5_2000x1174.png 1272w, https://substackcdn.com/image/fetch/$s_!LTyM!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F044a9ee5-3d8e-4773-a490-aaf915ba4af5_2000x1174.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!LTyM!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F044a9ee5-3d8e-4773-a490-aaf915ba4af5_2000x1174.png" width="1456" height="855" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/044a9ee5-3d8e-4773-a490-aaf915ba4af5_2000x1174.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:855,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:3273797,&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/207754659?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F044a9ee5-3d8e-4773-a490-aaf915ba4af5_2000x1174.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_!LTyM!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F044a9ee5-3d8e-4773-a490-aaf915ba4af5_2000x1174.png 424w, https://substackcdn.com/image/fetch/$s_!LTyM!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F044a9ee5-3d8e-4773-a490-aaf915ba4af5_2000x1174.png 848w, https://substackcdn.com/image/fetch/$s_!LTyM!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F044a9ee5-3d8e-4773-a490-aaf915ba4af5_2000x1174.png 1272w, https://substackcdn.com/image/fetch/$s_!LTyM!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F044a9ee5-3d8e-4773-a490-aaf915ba4af5_2000x1174.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>That is also the honest boundary. It is a canvas-and-timeline tool, and that multi-device, sensor-rich scenario is a once-in-a-blue-moon project. For everyday screen work it is more machinery than the job needs, and the result is a high-fidelity simulation rather than native code.</p><p><strong>Best for:</strong> Complex, multi-device, sensor-driven interaction work where hand-authored control is the whole point.</p><h2>Origami Studio</h2><p>Origami Studio, from Meta, has a devoted following and a patch graph that can express real logic and animation. It produces convincing, high-fidelity results. I downloaded it ready to learn it.</p><p>I gave up. The learning curve was steep, the node canvas sits closer to engineering than design, and I could not justify the time to get fluent. That is a me decision, not a verdict on the tool. Designers who have invested in the patch model get a lot from it. I am not one of them.</p><p><strong>Best for:</strong> Designers already fluent in the patch-graph model who want deep, hand-built control.</p><h2>Prototo</h2><p>Prototo is the one I built, for exactly the gap the others left me: native iOS fidelity, from a designer&#8217;s hands, without an engineer or learning React Native.</p><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;f071c944-0ea8-4f20-ade8-49b69c2eb47a&quot;,&quot;duration&quot;:null}"></div><p>You describe a screen to your coding agent, Claude Code or Codex, and it renders as a real native iOS app. Real gestures, real haptics, Liquid Glass, actual scroll physics. There is no canvas and no IDE. The iOS Simulator is the canvas, the agent is the design tool, and you never open a file.</p><pre><code><code>&gt; add a native bottom tab bar with a blur background</code></code></pre><p>It is native because it runs on the native runtime, not a webview. From installing Prototo Desktop a running prototype in the Simulator takes under 90 seconds, and you can publish a link anyone opens and runs natively on their own iPhone. It crossed 5,000 installs, 3,600 of them in the first week.</p><p>The honest boundary: Prototo is a prototyping tool, not a production build pipeline. You get prototypes you test, share, and hand off.</p><p><strong>Best for:</strong> Product designers who want native iOS prototypes from a prompt, with no canvas, no IDE, and no waiting on an engineer.</p><h2>The Play-shaped gap</h2><p>Before Prototo, the closest thing to native fidelity without engineering was Play. Designers built with real SwiftUI components, and it won a 2025 Apple Design Award. I downloaded it too. Same wall as Origami, too technical for my liking, and I gave up before I got anywhere.</p><p>In 2026 Apple acquired the team, and Play wound down, with support ending in April. Designers who wanted native fidelity without the engineering are now looking for where to go next. Prototo answers that with a prompt-native workflow instead of a canvas to learn.</p><h2>So which one</h2><ol><li><p>Native iOS prototypes from a prompt, no canvas, no IDE &#8594;<strong> <a href="https://prototo.app">Prototo</a></strong>.</p></li><li><p>Web concepts, fast, inside Figma &#8594;<strong> </strong>Figma Make.</p></li><li><p>Deep, multi-device interaction design &#8594;<strong> </strong>ProtoPie.</p></li><li><p>Patch-graph control you have already invested in &#8594; Origami Studio.</p></li></ol><p>Every tool here is good at the job it was built for and I still reach for most of them.</p>]]></content:encoded></item><item><title><![CDATA[The 5 markdown files your AI project needs beyond CLAUDE.md and DESIGN.md]]></title><description><![CDATA[How I set up every project on Claude Code these days]]></description><link>https://www.designaistack.com/p/the-5-markdown-files-your-ai-project</link><guid isPermaLink="false">https://www.designaistack.com/p/the-5-markdown-files-your-ai-project</guid><dc:creator><![CDATA[Sherizan]]></dc:creator><pubDate>Tue, 14 Jul 2026 01:00:22 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!jIVU!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd2f1ec4-c236-409e-a4ab-d69d6c4cecb9_1440x900.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_!jIVU!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd2f1ec4-c236-409e-a4ab-d69d6c4cecb9_1440x900.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jIVU!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd2f1ec4-c236-409e-a4ab-d69d6c4cecb9_1440x900.png 424w, https://substackcdn.com/image/fetch/$s_!jIVU!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd2f1ec4-c236-409e-a4ab-d69d6c4cecb9_1440x900.png 848w, https://substackcdn.com/image/fetch/$s_!jIVU!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd2f1ec4-c236-409e-a4ab-d69d6c4cecb9_1440x900.png 1272w, https://substackcdn.com/image/fetch/$s_!jIVU!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd2f1ec4-c236-409e-a4ab-d69d6c4cecb9_1440x900.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jIVU!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd2f1ec4-c236-409e-a4ab-d69d6c4cecb9_1440x900.png" width="1440" height="900" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/dd2f1ec4-c236-409e-a4ab-d69d6c4cecb9_1440x900.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:900,&quot;width&quot;:1440,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1495771,&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/206464089?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd2f1ec4-c236-409e-a4ab-d69d6c4cecb9_1440x900.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_!jIVU!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd2f1ec4-c236-409e-a4ab-d69d6c4cecb9_1440x900.png 424w, https://substackcdn.com/image/fetch/$s_!jIVU!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd2f1ec4-c236-409e-a4ab-d69d6c4cecb9_1440x900.png 848w, https://substackcdn.com/image/fetch/$s_!jIVU!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd2f1ec4-c236-409e-a4ab-d69d6c4cecb9_1440x900.png 1272w, https://substackcdn.com/image/fetch/$s_!jIVU!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd2f1ec4-c236-409e-a4ab-d69d6c4cecb9_1440x900.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>CLAUDE.md tells your agent how you work. DESIGN.md tells it how things look. I used to stop at those two.</p><p>Start a real project and you find that two files are not the system. You also need what you are building, who it is for, how it should sound, what to do next, and where you left off last time. Five more markdown files cover that. A sixth handles the case that tripped me up when I was building Prototo... more than one repo.</p><p>The order matters more than you would expect because some of these files read the others. Here they are, in the order you write them.</p><h2>1. PLAN.md, what you are building</h2><p>Before you install a single plugin, write down what you are building. Not for the agent yet. For the two files that come right after it.</p><p>PLAN.md is the shape of the project before any code. What you are building, who it is for, the core flows, what is in scope and what you are deliberately not building, the constraints. Keep it short enough to read in a minute and honest about the non-goals. The non-goals save you more time than the goals do.</p><p>Here is why it goes first, and this part surprised me. When you install the brand and voice plugins and run them, they do not only ask you questions. They read your project folder to ask the right ones. Give them a PLAN.md and the interview is about your actual product. Give them an empty folder and they have nothing to go on but the folder name. I tested it: on an empty folder, the brand it wrote was a guess off the folder name. With a PLAN.md sitting there, the questions got sharp and the output was about my real thing. So the plan is not only for you. It is the foundation the next two files grow from.</p><h2>2. BRAND.md, who you are</h2><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;ab43b85b-bdde-434c-b5be-981e46c1a8ba&quot;,&quot;duration&quot;:null}"></div><p>Ask an agent to name a feature and it picks a personality. Ask for a button label and it picks a voice. None of it is wrong, it is only not yours, and it drifts a little further every session. The agent has no idea who the product is for.</p><p>BRAND.md is who you are. Audience, personality, the promise, the character. It is the root the words and the design both read from, so they trace back to the same place instead of each one guessing on its own.</p><p>I do not hand-write it. The <code>brand</code> plugin runs <code>/brand</code>. It probes you with a good brand designer&#8217;s questions, and because it reads what is already in your folder, this is where PLAN.md pays off: with the plan there, the interview is about your real product, not the folder name. Then it writes BRAND.md from your answers.</p><p>Here is the part that made me smile the first time. It even draws you a logo. A clean monoline SVG mark, built from the personality it just captured, the kind of thing you would open a design tool for. Then it seeds VOICE.md and DESIGN.md from the same brand, so the words and the look start from who you are.</p><p>Open your new project folder:</p><pre><code><code>claude
/plugin marketplace add sherizan/designagent
/plugin install brand@designagent</code></code></pre><h2>3. VOICE.md, how you sound</h2><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;d2ee48b2-ed4a-4999-b87d-bf5a5a24be7f&quot;,&quot;duration&quot;:null}"></div><p>DESIGN.md covers the pixels. It says nothing about the words, which is where AI gives itself away fastest. The em dashes. The hype. The hedging. The copy that reads like every other product.</p><p>VOICE.md is how you talk: your personality, your banned words, your punctuation, with examples the agent can match against. Because the plan and the brand came first, the voice starts from who you are, not from scratch. The <code>voice</code> plugin writes it with <code>/voice</code>, then <code>/proofread</code> enforces it on any copy you point at. It strips the AI tells and leaves the substance alone. It will not touch an install command, an id, a tool name, a version, or a line of code.</p><p>I run the same rules on this newsletter that VOICE.md enforces in my projects, so I am not selling you a discipline I skip myself.</p><p>In the same project folder:</p><pre><code><code>/plugin marketplace add sherizan/designagent
/plugin install voice@designagent</code></code></pre><h2>4. BACKLOG.md, what to build next</h2><p>PLAN.md is the what and the why. It does not tell the agent what to do right now. Without a backlog it starts every session by asking you, or worse, it picks something itself and you find out after.</p><p>BACKLOG.md is PLAN.md broken into an ordered queue. Top of the file is the next thing. A &#8220;Now&#8221; for this session, a &#8220;Next&#8221; that is ranked, a &#8220;Later&#8221; you do not have to think about yet, and a short &#8220;Done&#8221; so the agent has recent context and does not rebuild something you already shipped. The plan is stable, the backlog changes every session. Keeping them in separate files is what lets one hold still while the other moves.</p><p>The point is that priority lives in a file the agent reads, not in your head. You stop being the queue.</p><pre><code><code>"Build the next item in @BACKLOG.md that's highest priority"</code></code></pre><blockquote><p>One honest limit. BACKLOG.md works while the queue fits on one screen and it is basically you. The day it outgrows that, or a second person needs it, or items start needing an owner and a link to the actual work, move it to GitHub Issues and a project board. You do not lose the agent when you do. Claude Code reads issues through the GitHub connection, so you point CLAUDE.md at the repo and it still pulls the queue. This file is the training wheels. GitHub is where the backlog grows up.</p></blockquote><h2>5. SESSIONS.md, where you left off</h2><p>Here is the thing nobody warns you about. Close the chat, come back the next morning, and the AI remembers none of it. Not what you built, not what you left half done, not the thing you were waiting on. It is a brand new assistant every day, and you are the only one who remembers yesterday.</p><p>SESSIONS.md is where I write yesterday down. It is a running note of where things stand, and I read it first every time I sit back down. Three simple parts: what I am waiting on, the handful of facts I keep having to explain again, and a short dated log of what happened with the newest bit on top. Two lines at the end of a session, and the next one starts already knowing the story.</p><p>Of all six files, this is the one I would keep if I could only keep one. A brand can wait a day. Starting from zero every single morning cannot.</p><pre><code><code>"Before we wrap up for the day, sum up what we did to @SESSIONS.md"</code></code></pre><h2>Advanced: CONTRACT.md, when the project spans more than one repo</h2><p>Everything above lives in one project folder. The day it grows a second one, things break in a new way. My prototo app is split across a few repos: the desktop app, the website, and a shared core. Change a link format in one and forget to tell the other, and the join between them snaps. Two AIs working in two folders, neither one watching the other.</p><p>So the contract does not live inside either app. It gets its own small repo. Mine is called &#8220;{projectname}-shared&#8221;, and it holds one file that lists everything the repos have to agree on: the link shapes, the shared settings, the version numbers that must move together, and who owns each one. Every repo&#8217;s CLAUDE.md pulls in that one file, so every session in every repo loads the same source of truth without me thinking about it. There is even a small script that checks all the repos against the contract and tells me the moment one has drifted.</p><p>The rule is simple. Change the contract first, then change the code on either side, never the other way around. Skip this file until you have a second repo. The day you add one, write the contract before the agent decides the join for you.</p><h2>How the files stack</h2><p>Read in order, it is one system. PLAN.md is what you are building, and it goes first so the brand and voice plugins have something real to read. BRAND.md decides who you are. VOICE.md keeps the words on brand. DESIGN.md keeps the interface on system. BACKLOG.md is what to do next, and SESSIONS.md is what happened last. CONTRACT.md holds the line between repos when there is more than one.</p><p>Which leaves CLAUDE.md, and this is the part I had wrong.</p><h2>EDIT: CLAUDE.md is the index</h2><p>My first instinct was to @import all six files into CLAUDE.md so the agent always had everything. It works, and it is wasteful. Every session opens by loading a brand you are not questioning, a contract for repos you are not touching, and a backlog you already know, and the context you wanted for the actual work is spent before you type anything.</p><p>An index is smaller. CLAUDE.md says what each file is and when to read it, and the agent goes and gets the one it needs. Two are worth loading every session: SESSIONS.md, because where you left off is always relevant, and PLAN.md, because the goal is always relevant. The rest are pointers. Writing copy, it opens VOICE.md. Touching the interface, DESIGN.md. Second repo, CONTRACT.md. The agent decides in the moment, because the index told it what exists.</p><p>The term for this is progressive disclosure, and you already know it from the design side. A design system doc does not open with every component on one page. It gives you a contents list and you open the page you need. Same move here, pointed at an agent instead of a designer.</p><blockquote><p>Credit to <span>Cristian Achiardi</span><strong><span> </span></strong><span>for calling this out my first version.</span></p></blockquote><p>The test is easy to run. If CLAUDE.md is long enough that you skim it, the agent is skimming it too.</p><p>You write it down once in files the agent reads when they matter, and let it check its own work against them.</p><h2>How to make all six (paste these into Claude Code):</h2><p>If you&#8217;re running these, make sure you have <em>Plan Mode</em> activated.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!risg!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b015ff0-daf5-4f25-9a6b-815f09ad57d4_1920x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!risg!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b015ff0-daf5-4f25-9a6b-815f09ad57d4_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!risg!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b015ff0-daf5-4f25-9a6b-815f09ad57d4_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!risg!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b015ff0-daf5-4f25-9a6b-815f09ad57d4_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!risg!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b015ff0-daf5-4f25-9a6b-815f09ad57d4_1920x1080.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!risg!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b015ff0-daf5-4f25-9a6b-815f09ad57d4_1920x1080.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0b015ff0-daf5-4f25-9a6b-815f09ad57d4_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;:412738,&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/206464089?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b015ff0-daf5-4f25-9a6b-815f09ad57d4_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_!risg!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b015ff0-daf5-4f25-9a6b-815f09ad57d4_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!risg!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b015ff0-daf5-4f25-9a6b-815f09ad57d4_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!risg!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b015ff0-daf5-4f25-9a6b-815f09ad57d4_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!risg!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b015ff0-daf5-4f25-9a6b-815f09ad57d4_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><strong>BRAND.md and VOICE.md</strong> run from the plugins:</p><pre><code><code>/plugin marketplace add sherizan/designagent
/plugin install brand@designagent
/plugin install voice@designagent

/brand      # interviews you -&gt; BRAND.md + a logo, seeds voice + design
/voice      # writes VOICE.md</code></code></pre>
      <p>
          <a href="https://www.designaistack.com/p/the-5-markdown-files-your-ai-project">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[How to give Claude Code hands and eyes inside Figma.]]></title><description><![CDATA[Watch now | Two-way bridge so Claude can see your current selection, build and edit the design right on the canvas]]></description><link>https://www.designaistack.com/p/how-to-give-claude-code-hands-and</link><guid isPermaLink="false">https://www.designaistack.com/p/how-to-give-claude-code-hands-and</guid><dc:creator><![CDATA[Sherizan]]></dc:creator><pubDate>Mon, 29 Jun 2026 07:37:06 GMT</pubDate><enclosure url="https://api.substack.com/feed/podcast/202898998/d8df40a360e017dae6d4944f228eb316.mp3" length="0" type="audio/mpeg"/><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_!lmmK!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f763229-a582-43e6-bd56-d52e18910e19_1920x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!lmmK!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f763229-a582-43e6-bd56-d52e18910e19_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!lmmK!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f763229-a582-43e6-bd56-d52e18910e19_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!lmmK!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f763229-a582-43e6-bd56-d52e18910e19_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!lmmK!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f763229-a582-43e6-bd56-d52e18910e19_1920x1080.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!lmmK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f763229-a582-43e6-bd56-d52e18910e19_1920x1080.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1f763229-a582-43e6-bd56-d52e18910e19_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;:1102720,&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/202898998?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f763229-a582-43e6-bd56-d52e18910e19_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_!lmmK!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f763229-a582-43e6-bd56-d52e18910e19_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!lmmK!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f763229-a582-43e6-bd56-d52e18910e19_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!lmmK!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f763229-a582-43e6-bd56-d52e18910e19_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!lmmK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f763229-a582-43e6-bd56-d52e18910e19_1920x1080.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>TLDR:</strong> I gave Claude Code a two-way bridge into my Figma file. It reads my canvas, fixes it, and builds on it directly, with more than thirty tools running on the live file. I built it because I already run everything through Claude, so the natural move was to bring Claude onto the canvas, not adopt a separate AI inside Figma.</p><h2>Why Claude, and not Figma&#8217;s AI</h2><p>I already pay for Claude. I am on the Enterprise plan, and I am in it all day, for everything.</p><p>The subscription is the small part. The real weight is everything I have built around it. The plugins I run, the MCP servers I have connected, the skills I have written, my <code>CLAUDE.md</code> files, the project memory, and the taste I have taught it over months. None of that transfers to a different AI. It is the thing that makes the agent actually useful, and it all lives in Claude.</p><p>Claude is also where my work starts. Every project, every build, the terminal is already open. It is my starting point, not something I switch into.</p><p>So when I want to work on a Figma file, I do not want to jump into a different AI inside Figma and start that relationship from zero. I want the agent that already knows my work to reach into the canvas. Same context, same memory, same taste, now with hands in Figma. Using Claude on Figma is not a workaround. For how I work, it is the natural move.</p><p>That is the whole reason DesignAgent runs two ways now. For months it only ran one. I would select a screen, it turned the design into a spec and a code-gen prompt, I pasted that into Claude Code, and the UI came out somewhere else, in the editor, away from the file my team lived in. I cut a design-to-engineering handoff from about two weeks to four hours once with Figma Code Connect, and the lesson stuck: every time you remove a copy-paste between two tools, the work gets faster and the result stays truer. DesignAgent still had one of those seams in the middle. So I closed it.</p><p>DesignAgent now has a two-way bridge. Claude Code can read the canvas, fix things on the canvas, and create on the canvas directly. The handoff runs both directions.</p><h2>What &#8220;two-way&#8221; actually means</h2><p>Claude Code is connected to the open Figma file. It can read the selection, then act on it. Move a layer. Fix the padding. Swap a raw hex for a token. Create a frame, text, a shape, an image. Restyle, regroup, re-layout. There are more than thirty tools on Claude&#8217;s side, and they all run against the live file. The canvas is now something Claude works <em>on</em>, not just something it reads <em>from</em>.</p><p>The connection is a small thing technically and a big thing in practice. The plugin opens a local socket, Claude Code connects to it, and the tools show up on Claude&#8217;s side immediately. You flip one switch in the plugin, the dot turns green, and now you can say &#8220;read my current selection and build the empty state next to it&#8221; and it does, against the live file.</p><p>And the connection holds, which matters more than it sounds. The bridge runs on a heartbeat. It pings on a steady beat and the plugin shows you when it last heard back, so a green dot means actually live, not a socket that quietly died ten minutes ago. If the link drops, it reconnects on its own, and a watchdog notices a silent connection and re-handshakes it. The first version of this thing would connect and then die halfway through a build, which is the worst possible moment. This one stays up while you work. For an agent editing your real file, that reliability is the whole game.</p><p>The plugin panel itself does two things, and that is the point: connect the bridge, and pick the project. If you have a few Claude Code sessions open, a small picker lets you choose which one DesignAgent reads and writes, so the agent and the file you mean are always the same thing. Everything else happens in the terminal.</p><p>It is all local. No API token to mint, no paid seat, no cloud roundtrip. The plugin runs with network access switched off, so the whole exchange stays on your machine. Nothing about your file leaves the room.</p><h2>1. Install the bridge</h2><p>DesignAgent is two halves that talk to each other: the Figma plugin and a Claude Code plugin that ships the bridge.</p><p>The Figma plugin is on the Community: search <strong>DesignAgent</strong>, or <a href="http://figma.com/community/plugin/1604428052675393154/designagent-claude-bridge">open it here</a>.</p><p>The Claude Code side installs from the marketplace:</p><pre><code><code>/plugin marketplace add sherizan/designagent-figma
/plugin install designagent@designagent</code></code></pre><p>Restart Claude Code after the install. That gives you the <code>design-to-code</code> skill and the <code>designagent</code> MCP server in one shot. Node has to be installed, the server runs on it. Nothing else to configure.</p><h2>2. Turn the bridge on</h2><ol><li><p>Open the <strong>DesignAgent</strong> plugin in Figma.</p></li><li><p>On the &#8220;Claude bridge&#8221; bar, click <strong>Start</strong>. The dot turns green and the status reads &#8220;Connected&#8221; when Claude links up. The bar also shows a heartbeat (&#8221;heartbeat 2s ago&#8221;) so you can tell the link is actually live and not stalled.</p></li><li><p>In Claude Code, the bridge tools are live immediately. Test it with one line:</p></li></ol><pre><code><code>Use DesignAgent to read my current Figma selection and tell me what is on it.</code></code></pre><p>If it comes back with the layers and structure of the screen you have selected, you are connected.</p><h2>3. The prompt pack I run</h2><p>These are the kinds of instructions I actually run. They are in <code>assets/prompt-pack.md</code> as well, ready to paste.</p><h3>Extract the tokens to DESIGN.md</h3><pre><code><code>Extract the tokens from my current selection (colors, type, spacing, radius) and write
them to DESIGN.md. Use my real values, do not round or invent any.</code></code></pre><div><hr></div><h3>Create a design system from a logo</h3><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;5ce638d7-a6e0-4aca-837f-274e85a7993d&quot;,&quot;duration&quot;:null}"></div><pre><code><code>Look at the logo I have selected. Create a foundation for my design system and create/update DESIGN.md</code></code></pre><div><hr></div><h3>Build the first set of UI components</h3><pre><code><code>Using the tokens in DESIGN.md, build a first set of components on a new frame: buttons
(primary, secondary, ghost), slider, toggle and a form (input with label and an error state). On-system only.</code></code></pre><div><hr></div><h3>Design a landing page with the UI components</h3><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;0ba53e02-7174-4659-a5b8-564574ac4920&quot;,&quot;duration&quot;:null}"></div><pre><code><code>Using the tokens in DESIGN.md, design a marketing landing page</code></code></pre><div><hr></div><h3>Write the screen copy in your voice</h3><p>If you have your tone of voice in a markdown, you can use DesignAgent to write copy for the screens.</p><pre><code><code>Read voice.md. Write the copy for the screen I have selected using that tone of voice,
and set it on the matching text nodes. Show me each change before you apply it.</code></code></pre><div><hr></div><h3>Create a social asset from your branding</h3><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;17cd4e6e-b338-4026-9890-cbb72b967d74&quot;,&quot;duration&quot;:null}"></div><pre><code><code>Create a social media asset templates for LinkedIn/Substack in Figma. Use the branding in DESIGN.md (my colors, type, and logo). Keep every value on-system.</code></code></pre><p>The discipline that makes these work: scope it tight. One frame or one flow at a time, not the whole file. The agent is precise when the target is small and drifts when you point it at everything at once. And let it check its own work: build, screenshot, compare to <code>DESIGN.md</code>, fix.</p><div><hr></div><h3>Bonus: Mobbin MCP: Use DesignAgent to paste the screens into the frame.</h3><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;f2799e32-5671-4f94-93cb-8dfab5ca3975&quot;,&quot;duration&quot;:null}"></div><pre><code><code>Use Mobbin MCP to extract Revolut onboarding flows and paste them to Figma</code></code></pre><div><hr></div><h2>My Takeaway</h2><p>This is the part I did not expect to feel so different. Claude is not looking at my design anymore. It is designing on it.</p><ul><li><p><strong>Claude designs on your real canvas.</strong> The same model you already work with, now with hands in Figma. It builds, edits, and arranges on the live file, not a copy of it.</p></li><li><p><strong>It brings everything you have taught it.</strong> Your plugins, your MCP servers, your skills, your <code>CLAUDE.md</code>, and your taste all come with it. You are not starting a new tool from zero.</p></li><li><p><strong>It goes from nothing to a system.</strong> A logo becomes tokens. Tokens become buttons and forms. A screen gets copy in your voice. Your branding becomes a finished social asset. All on-system, all in one session.</p></li><li><p><strong>It checks its own work.</strong> It screenshots what it built, compares it to your <code>DESIGN.md</code>, and fixes what came out off. Build, look, correct.</p></li><li><p><strong>It is yours and it is private.</strong> Free, local, no token, no extra seat. Nothing leaves your machine.</p></li></ul><p>You still hold the taste. You decide what good looks like, what to keep, what to cut. The bridge just means the agent that already knows your work can finally reach the canvas and do the hands-on part with you. Design and code, one loop, one source of truth, one agent you already trust. That is the shift, and it is a big one.</p>]]></content:encoded></item><item><title><![CDATA[5 MCP Tools I Use as a Designer]]></title><description><![CDATA[Skip the starter list. These plug Claude Code into motion, copy, live data, and your own canvas.]]></description><link>https://www.designaistack.com/p/5-mcp-tools-i-use-as-a-designer</link><guid isPermaLink="false">https://www.designaistack.com/p/5-mcp-tools-i-use-as-a-designer</guid><dc:creator><![CDATA[Sherizan]]></dc:creator><pubDate>Fri, 19 Jun 2026 16:46:50 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!ZgRp!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4152549b-9525-4deb-b54d-0f4bfd52683e_1920x1080.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_!ZgRp!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4152549b-9525-4deb-b54d-0f4bfd52683e_1920x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ZgRp!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4152549b-9525-4deb-b54d-0f4bfd52683e_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!ZgRp!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4152549b-9525-4deb-b54d-0f4bfd52683e_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!ZgRp!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4152549b-9525-4deb-b54d-0f4bfd52683e_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!ZgRp!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4152549b-9525-4deb-b54d-0f4bfd52683e_1920x1080.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ZgRp!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4152549b-9525-4deb-b54d-0f4bfd52683e_1920x1080.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4152549b-9525-4deb-b54d-0f4bfd52683e_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;:2475672,&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/202727262?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4152549b-9525-4deb-b54d-0f4bfd52683e_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_!ZgRp!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4152549b-9525-4deb-b54d-0f4bfd52683e_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!ZgRp!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4152549b-9525-4deb-b54d-0f4bfd52683e_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!ZgRp!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4152549b-9525-4deb-b54d-0f4bfd52683e_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!ZgRp!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4152549b-9525-4deb-b54d-0f4bfd52683e_1920x1080.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>You have the basics wired. The Figma MCP, a Context7 docs server, Github MCP, the usual starter setup. That is a good floor.</p>
      <p>
          <a href="https://www.designaistack.com/p/5-mcp-tools-i-use-as-a-designer">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[Claude Code for Designers]]></title><description><![CDATA[The exact setup, a CLAUDE.md and DESIGN.md starter, and the workflows I run on top of it. Copy it inside.]]></description><link>https://www.designaistack.com/p/claude-code-for-designers-knowledge</link><guid isPermaLink="false">https://www.designaistack.com/p/claude-code-for-designers-knowledge</guid><dc:creator><![CDATA[Sherizan]]></dc:creator><pubDate>Sun, 07 Jun 2026 01:00:32 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!zjnx!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc0d5ae0-079d-4085-830f-bcf5d2f4150b_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_!zjnx!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc0d5ae0-079d-4085-830f-bcf5d2f4150b_3600x2358.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!zjnx!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc0d5ae0-079d-4085-830f-bcf5d2f4150b_3600x2358.png 424w, https://substackcdn.com/image/fetch/$s_!zjnx!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc0d5ae0-079d-4085-830f-bcf5d2f4150b_3600x2358.png 848w, https://substackcdn.com/image/fetch/$s_!zjnx!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc0d5ae0-079d-4085-830f-bcf5d2f4150b_3600x2358.png 1272w, https://substackcdn.com/image/fetch/$s_!zjnx!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc0d5ae0-079d-4085-830f-bcf5d2f4150b_3600x2358.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!zjnx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc0d5ae0-079d-4085-830f-bcf5d2f4150b_3600x2358.png" width="1456" height="954" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/bc0d5ae0-079d-4085-830f-bcf5d2f4150b_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;:1487832,&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/200887925?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc0d5ae0-079d-4085-830f-bcf5d2f4150b_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_!zjnx!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc0d5ae0-079d-4085-830f-bcf5d2f4150b_3600x2358.png 424w, https://substackcdn.com/image/fetch/$s_!zjnx!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc0d5ae0-079d-4085-830f-bcf5d2f4150b_3600x2358.png 848w, https://substackcdn.com/image/fetch/$s_!zjnx!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc0d5ae0-079d-4085-830f-bcf5d2f4150b_3600x2358.png 1272w, https://substackcdn.com/image/fetch/$s_!zjnx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc0d5ae0-079d-4085-830f-bcf5d2f4150b_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>The most useful design review I ran at Botim in these past months, I did not run. An agent did.</p><p>We were shipping a money transfer flow. The confirmation screen showed the amount one way and the entry screen showed it another, just different formatting, the kind of thing you stop seeing after the fortieth look. Research had already told us users lose confidence when the number looks different at confirmation. The agent caught it in one pass, tied it to that research, and flagged the &#8220;Send now&#8221; button against our own rule for irreversible actions. It suggested &#8220;Send AED 250. This cannot be undone.&#8221;</p><p>That is the production version: five agents, the real superdesigner. This piece is the stripped-down one you run yourself in Claude Code.</p><p>Here is the part nobody tells you. I lead design for a product with 150 million users, and the first week I tried Claude Code I opened the terminal, looked at it, and closed it. The capability was right there. The setup was the wall.</p><p>Nobody hands a designer the other side of that wall. So here it is, the whole thing: the setup I run, every MCP, the Skills that hold my taste, and the four workflows on top. This is design knowledge work, research synthesis, competitor analysis, design systems, specs, and prototypes you think with. Not for shipping to production, and you do not need to code. You point it at the thinking, not the deploy button.</p><p>I also build apps that four people use. The day job and the side project taught me the same thing.. the tool stopped being the bottleneck a while ago, the setup is it. Once Claude Code knows your taste and your stack, it stops improvising and starts building the thing you would have built yourself.</p><h2>What is in here</h2><p>The foundation, six pieces, in order:</p><ul><li><p>The CLI, configured so the terminal stops being the scary part.</p></li><li><p>A CLAUDE.md that holds your taste, so it builds like you, not a generic template.</p></li><li><p>A DESIGN.md it reads as law, so &#8220;good&#8221; means your standard.</p></li><li><p>Permissions, so it moves fast without doing something you did not ask for.</p></li><li><p>The MCPs that wire it to Figma, live docs, and a real browser to check its own work.</p></li><li><p>The Skills that turn the moves you repeat into something it runs on its own.</p></li></ul><p>Then the four workflows on top, none of which need a line of production code:</p><ul><li><p><strong>Keep your design system honest.</strong> Audit it against your own rules, catch the drift, sync tokens.</p></li><li><p><strong>A prototype you think with.</strong> A written flow becomes something clickable that the agent opens, checks, and corrects itself.</p></li><li><p><strong>Research synthesis.</strong> Raw notes in, the themes and contradictions out, every claim cited.</p></li><li><p><strong>Pressure-test a spec.</strong> The states and edge cases a PRD misses, found before a single screen exists.</p></li></ul><p>Honest caveat: this is a setup you maintain. It will confidently build the wrong thing if your CLAUDE.md is vague, so the rules carry the weight. It does not replace your judgment. It clears the distance between your judgment and the screen.</p><p>The whole thing is below for paid members: the setup, every MCP, the Skills, and the four workflows with the exact prompt I run. It is the same pattern behind superdesigner.ai, the reviewer design teams at OKX and Grab use, stripped to what you need for your own work.</p>
      <p>
          <a href="https://www.designaistack.com/p/claude-code-for-designers-knowledge">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[How I built a native prototyping tool. It hit 3,500 downloads.]]></title><description><![CDATA[One command, a live, native prototype in under 60 seconds, then you design it by prompting. Here&#8217;s the story and a full walkthrough.]]></description><link>https://www.designaistack.com/p/i-built-a-native-prototyping-tool</link><guid isPermaLink="false">https://www.designaistack.com/p/i-built-a-native-prototyping-tool</guid><dc:creator><![CDATA[Sherizan]]></dc:creator><pubDate>Tue, 26 May 2026 23:01:20 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/f9716fc3-1c4b-4560-ada8-25665d816e3a_1672x941.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;1b486e8a-6092-4df1-9750-f625e47b116c&quot;,&quot;duration&quot;:null}"></div><p>It started with a real problem at work.</p><p>We had a major product change coming. Key UX flows moving, new UI, brand changes. The kind of thing you cannot judge from a Figma canvas. I needed to <em>feel</em> it. Real gestures, real scroll, the way it actually behaves in your hand.</p><p>Figma surfing wasn&#8217;t going to tell me that. Figma Make is good, and I use it, but it renders the web and I needed to feel native. Xcode would get me there and lose every designer on my team on the way. I&#8217;d been dabbling with Expo on personal apps, so I knew native was reachable. It just wasn&#8217;t reachable for a designer who didn&#8217;t want to live in an engineering setup.</p><p>So I asked a simple question. What if I strip Expo down to the basics, point Claude Code at the folder from a terminal, and just let it run?</p><h2>A couple of hours later, it worked</h2><p>After an afternoon poking at Expo with Claude, I had it.</p><p>One command opens the iOS Simulator with a welcome screen, ready to prototype. Under 60 seconds and you have a live, real, native prototype running in front of you. As far as I can tell, it&#8217;s the first tool that does this.</p><pre><code><code>npm create proto@latest myapp</code></code></pre><p>Then the fun part. You open a new terminal, open Claude Code in the project and start prompting. The screens come to life as you type, thanks to Expo&#8217;s hot reload. No canvas. No IDE. You describe what you want and it appears in the Simulator.</p><pre><code><code>cd myapp
claude</code></code></pre><p>Then connect the Figma MCP to Claude and you can build your actual designs straight into the prototype. That&#8217;s the moment it clicked for me. Within hours, the product we&#8217;d designed was running as a live native prototype I could hold and feel.</p><h2>I sent it to a few friends to see if it would break</h2><p>That was the real test. Hand it to other designers and watch what happens.</p><p>They got hooked. They started sending me videos of their own prototypes running. That&#8217;s when I knew it wasn&#8217;t just solving my problem.</p><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;ac07d0fb-a0d9-4328-a351-f5b829bec61b&quot;,&quot;duration&quot;:null}"></div><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;5a59c952-2566-468d-b81e-ffade6027bbb&quot;,&quot;duration&quot;:null}"></div><p>npmjs now shows around <a href="https://www.npmjs.com/package/create-proto">2,600 weekly downloads</a>. Turns out a lot of folks needed this more than I thought.</p><h2>Where it sits next to the tools you already use</h2><p>Every tool here is good at its job. The point is that one specific combination didn&#8217;t exist yet: designer-friendly, genuinely native, prompt-only, no IDE, no canvas.</p><p>A few comparisons:</p><p><strong>Figma Make</strong> is designer-friendly and needs no IDE. It renders a webview, so native feel isn&#8217;t its job.</p><p><strong>ProtoPie</strong> is great for rich interaction design, but it isn&#8217;t native and isn&#8217;t prompt-driven.</p><p><strong>Origami Studio</strong> can get genuinely native, but it&#8217;s a steep canvas-and-patch tool, not a prompt one.</p><p><strong>Expo and SwiftUI</strong> are as native as it gets. Both are built for engineers, not designers.</p><p>Prototo is the one that&#8217;s all five at once. That&#8217;s the gap it fills, and it&#8217;s the only reason it exists.</p><h2>What&#8217;s honest about where it is today</h2><p>The core works now. One command, the Simulator opening itself, prompting through Claude Code, Figma MCP, hot reload. That&#8217;s live today.</p><p>It&#8217;s a prototyping tool, not a production one. It generates prototypes you test, share, and hand off. Though the handoff is cleaner than usual, since the project itself reads like a spec.</p><p>And it&#8217;s native only by design. That&#8217;s a deliberate constraint, not an oversight.</p><h2>Try it this week</h2><p>If you&#8217;ve got a flow you can&#8217;t judge from the canvas, the kind you need to feel, give it 60 seconds.</p><pre><code><code>npm create proto@latest myapp</code></code></pre><p>Then <code>cd myapp</code>, run <code>claude</code>, and ask for a screen. Watch it come to life.</p><p>Learn more at <a href="http://prototo.app">prototo.app</a>, read the docs at <a href="http://docs.prototo.app">docs.prototo.app</a>, and the full demo is on YouTube above.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Wlnm!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2372d82-4102-4bf5-a929-32c522ee5e83_1672x941.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Wlnm!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2372d82-4102-4bf5-a929-32c522ee5e83_1672x941.png 424w, https://substackcdn.com/image/fetch/$s_!Wlnm!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2372d82-4102-4bf5-a929-32c522ee5e83_1672x941.png 848w, https://substackcdn.com/image/fetch/$s_!Wlnm!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2372d82-4102-4bf5-a929-32c522ee5e83_1672x941.png 1272w, https://substackcdn.com/image/fetch/$s_!Wlnm!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2372d82-4102-4bf5-a929-32c522ee5e83_1672x941.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Wlnm!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2372d82-4102-4bf5-a929-32c522ee5e83_1672x941.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d2372d82-4102-4bf5-a929-32c522ee5e83_1672x941.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;:440414,&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/199354907?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2372d82-4102-4bf5-a929-32c522ee5e83_1672x941.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_!Wlnm!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2372d82-4102-4bf5-a929-32c522ee5e83_1672x941.png 424w, https://substackcdn.com/image/fetch/$s_!Wlnm!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2372d82-4102-4bf5-a929-32c522ee5e83_1672x941.png 848w, https://substackcdn.com/image/fetch/$s_!Wlnm!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2372d82-4102-4bf5-a929-32c522ee5e83_1672x941.png 1272w, https://substackcdn.com/image/fetch/$s_!Wlnm!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2372d82-4102-4bf5-a929-32c522ee5e83_1672x941.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><p><em>Sherizan is Chief of Design at Botim, MENA&#8217;s fastest-growing super app. Previously Global Design Leader at TikTok and Senior Principal Designer at Grab, where he led the GrabPay redesign. He writes the Design AI Stack newsletter and builds in public.</em></p>]]></content:encoded></item><item><title><![CDATA[How to Ship Your First Mobile App with Claude Code.]]></title><description><![CDATA[Every prompt you need to go from blank folder to your first iOS and Android app. No tutorials. Just build.]]></description><link>https://www.designaistack.com/p/your-first-mobile-app-with-claude</link><guid isPermaLink="false">https://www.designaistack.com/p/your-first-mobile-app-with-claude</guid><dc:creator><![CDATA[Sherizan]]></dc:creator><pubDate>Mon, 25 May 2026 05:29:48 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!dK0w!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99a28f8c-04ca-46fb-88ec-4e74c40ec18e_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_!dK0w!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99a28f8c-04ca-46fb-88ec-4e74c40ec18e_2400x1572.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!dK0w!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99a28f8c-04ca-46fb-88ec-4e74c40ec18e_2400x1572.png 424w, https://substackcdn.com/image/fetch/$s_!dK0w!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99a28f8c-04ca-46fb-88ec-4e74c40ec18e_2400x1572.png 848w, https://substackcdn.com/image/fetch/$s_!dK0w!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99a28f8c-04ca-46fb-88ec-4e74c40ec18e_2400x1572.png 1272w, https://substackcdn.com/image/fetch/$s_!dK0w!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99a28f8c-04ca-46fb-88ec-4e74c40ec18e_2400x1572.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!dK0w!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99a28f8c-04ca-46fb-88ec-4e74c40ec18e_2400x1572.png" width="1456" height="954" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/99a28f8c-04ca-46fb-88ec-4e74c40ec18e_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;:882871,&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/199099683?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99a28f8c-04ca-46fb-88ec-4e74c40ec18e_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_!dK0w!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99a28f8c-04ca-46fb-88ec-4e74c40ec18e_2400x1572.png 424w, https://substackcdn.com/image/fetch/$s_!dK0w!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99a28f8c-04ca-46fb-88ec-4e74c40ec18e_2400x1572.png 848w, https://substackcdn.com/image/fetch/$s_!dK0w!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99a28f8c-04ca-46fb-88ec-4e74c40ec18e_2400x1572.png 1272w, https://substackcdn.com/image/fetch/$s_!dK0w!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99a28f8c-04ca-46fb-88ec-4e74c40ec18e_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>This is the mobile version of my prompt library.</p><p>The web app playbook covered Next.js. This one covers Expo. Same approach, different output. A real app that runs on iOS and Android.</p><p>In case you missed the web app playbook:</p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;0e648c30-0b4e-4530-b55c-f945adb809bf&quot;,&quot;caption&quot;:&quot;I run jfbi.ai, an AI Builder Sprint days with designers, founders, builders in a room. We hand everyone a stack and a set of prompts. By end of day, most people have shipped something real.&quot;,&quot;cta&quot;:null,&quot;showBylines&quot;:true,&quot;showDescription&quot;:true,&quot;showImage&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;Build and Deploy a Web App with Claude Code&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:35391892,&quot;name&quot;:&quot;Sherizan&quot;,&quot;bio&quot;:&quot;I share practical Design x AI workflows: Claude, Figma, Cursor, design systems and design leadership.&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9120d45d-b665-4d2a-b1f2-26a84873a795_1175x1177.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2026-05-24T18:48:51.385Z&quot;,&quot;cover_image&quot;:&quot;https://substackcdn.com/image/fetch/$s_!ysek!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d716d42-84b0-4300-b638-80e0f4665ee5_2400x1572.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.designaistack.com/p/build-and-deploy-a-web-app-with-claude&quot;,&quot;section_name&quot;:&quot;Playbook&quot;,&quot;video_upload_id&quot;:null,&quot;id&quot;:199093446,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:0,&quot;comment_count&quot;:0,&quot;publication_id&quot;:4382156,&quot;publication_name&quot;:&quot;Design AI Stack&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!iYnd!,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&quot;,&quot;belowTheFold&quot;:false,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div><hr></div><p><strong>Before you start: software you need</strong></p><p>Create accounts and install these first. They&#8217;re all free to sign up.</p><ul><li><p><strong>Node.js LTS.</strong> The engine that runs your app locally. Without it, nothing works. Download at nodejs.org (choose the Installer for your system, Mac or Windows).</p></li><li><p><strong>Expo Go.</strong> The app that shows your work on your actual phone while you build. Download it on your iPhone or Android from the App Store or Google Play. Free.</p></li><li><p><strong>Firebase.</strong> Your database and login system. Create a free account at firebase.google.com. No card required on the free plan.</p></li><li><p><strong>Claude.</strong> Paid subscription required for Claude Code. Make sure you&#8217;re on a paid plan at claude.ai before you start.</p></li></ul><p>A note if you&#8217;re on a work laptop: you may need admin rights to install software.</p>
      <p>
          <a href="https://www.designaistack.com/p/your-first-mobile-app-with-claude">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[How to Build and Deploy a Web App with Claude Code]]></title><description><![CDATA[Every prompt you need to go from blank folder to deployed app. No tutorials. Just build.]]></description><link>https://www.designaistack.com/p/build-and-deploy-a-web-app-with-claude</link><guid isPermaLink="false">https://www.designaistack.com/p/build-and-deploy-a-web-app-with-claude</guid><dc:creator><![CDATA[Sherizan]]></dc:creator><pubDate>Sun, 24 May 2026 18:48:51 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!ysek!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d716d42-84b0-4300-b638-80e0f4665ee5_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_!ysek!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d716d42-84b0-4300-b638-80e0f4665ee5_2400x1572.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ysek!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d716d42-84b0-4300-b638-80e0f4665ee5_2400x1572.png 424w, https://substackcdn.com/image/fetch/$s_!ysek!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d716d42-84b0-4300-b638-80e0f4665ee5_2400x1572.png 848w, https://substackcdn.com/image/fetch/$s_!ysek!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d716d42-84b0-4300-b638-80e0f4665ee5_2400x1572.png 1272w, https://substackcdn.com/image/fetch/$s_!ysek!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d716d42-84b0-4300-b638-80e0f4665ee5_2400x1572.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ysek!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d716d42-84b0-4300-b638-80e0f4665ee5_2400x1572.png" width="1456" height="954" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4d716d42-84b0-4300-b638-80e0f4665ee5_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;:3795541,&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/199093446?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d716d42-84b0-4300-b638-80e0f4665ee5_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_!ysek!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d716d42-84b0-4300-b638-80e0f4665ee5_2400x1572.png 424w, https://substackcdn.com/image/fetch/$s_!ysek!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d716d42-84b0-4300-b638-80e0f4665ee5_2400x1572.png 848w, https://substackcdn.com/image/fetch/$s_!ysek!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d716d42-84b0-4300-b638-80e0f4665ee5_2400x1572.png 1272w, https://substackcdn.com/image/fetch/$s_!ysek!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d716d42-84b0-4300-b638-80e0f4665ee5_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 run <a href="https://jfbi.ai">jfbi.ai</a>, an AI Builder Sprint days with designers, founders, builders in a room. We hand everyone a stack and a set of prompts. By end of day, most people have shipped something real.</p><p>This is that prompt library I&#8217;m sharing with you.</p><div><hr></div><p><strong>Before you start: software you need</strong></p><ul><li><p><strong>Node.js LTS.</strong> The engine that runs your app locally. Without it, nothing works. <a href="https://nodejs.org/en/download/">Download at nodejs.org</a> (choose the Installer for your system, Mac or Windows).</p></li></ul><p>A note if you&#8217;re on a work laptop: you may need admin rights to install software.</p><div><hr></div><p><strong>The stack</strong></p><ul><li><p><strong>Cursor.</strong> Where you write and see your code. Think of it as a smart text editor, like Figma but for building.</p></li><li><p><strong>Claude Code.</strong> Your AI building partner. Lives inside Cursor&#8217;s terminal. <em>Paid subscription required</em>.</p></li><li><p><strong>Next.js.</strong> The framework that powers your app.</p></li><li><p><strong>Tailwind and Shadcn UI.</strong> Handles how everything looks.</p></li><li><p><strong>Supabase.</strong> Your database, if you need to store data.</p></li><li><p><strong>Vercel.</strong> Puts your app on the internet in minutes.</p></li><li><p><strong>GitHub.</strong> Saves your work and tracks every change you make.</p></li></ul><div><hr></div>
      <p>
          <a href="https://www.designaistack.com/p/build-and-deploy-a-web-app-with-claude">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[How I turned competitor analysis into a single prompt with Mobbin MCP]]></title><description><![CDATA[Mobbin MCP + Figma Console MCP + Claude Code. The new stack that kills the copy-paste loop.]]></description><link>https://www.designaistack.com/p/how-i-turned-competitor-analysis</link><guid isPermaLink="false">https://www.designaistack.com/p/how-i-turned-competitor-analysis</guid><dc:creator><![CDATA[Sherizan]]></dc:creator><pubDate>Mon, 11 May 2026 15:17:32 GMT</pubDate><enclosure url="https://substack-video.s3.amazonaws.com/video_upload/post/197209912/7fefc1de-bd17-4d2a-a4ac-b4a90431a83a/transcoded-00001.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>For years, competitor analysis has been the most expensive cheap work in design.</p><p>Open Mobbin. Search the flow. Scroll. Screenshot. Drop into Figma. Reorder. Annotate. Repeat for the next competitor.</p><p>Hours. Every time. Last week that stopped.</p><h2>What I tried</h2><p>Mobbin shipped an official MCP in beta. Included with all paid plans during beta. Feature access and availability may change in future updates.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!S7bQ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F031a847e-6a92-402a-be58-c035243e5437_3840x2010.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!S7bQ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F031a847e-6a92-402a-be58-c035243e5437_3840x2010.png 424w, https://substackcdn.com/image/fetch/$s_!S7bQ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F031a847e-6a92-402a-be58-c035243e5437_3840x2010.png 848w, https://substackcdn.com/image/fetch/$s_!S7bQ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F031a847e-6a92-402a-be58-c035243e5437_3840x2010.png 1272w, https://substackcdn.com/image/fetch/$s_!S7bQ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F031a847e-6a92-402a-be58-c035243e5437_3840x2010.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!S7bQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F031a847e-6a92-402a-be58-c035243e5437_3840x2010.png" width="1456" height="762" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/031a847e-6a92-402a-be58-c035243e5437_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;:2573674,&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/197209912?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F031a847e-6a92-402a-be58-c035243e5437_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_!S7bQ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F031a847e-6a92-402a-be58-c035243e5437_3840x2010.png 424w, https://substackcdn.com/image/fetch/$s_!S7bQ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F031a847e-6a92-402a-be58-c035243e5437_3840x2010.png 848w, https://substackcdn.com/image/fetch/$s_!S7bQ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F031a847e-6a92-402a-be58-c035243e5437_3840x2010.png 1272w, https://substackcdn.com/image/fetch/$s_!S7bQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F031a847e-6a92-402a-be58-c035243e5437_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>I hooked it up alongside the Console MCP and pointed Claude Code at both.</p><p>Then I prompted:</p><div class="callout-block" data-callout="true"><p><code>&#8220;Find Google Pay onboarding flow and analyse them in Figma [paste your figma url]&#8221;</code></p></div><p>That&#8217;s it. One line.</p><h2>What actually happened</h2><p>Claude went to Mobbin. Pulled the screens. Started laying them out in Figma.</p><p>Then I noticed something off.</p><p>The first screen was Google Pay India. The second was Google Pay US. The third was Google Pay India again. The &#8220;onboarding flow&#8221; Claude assembled was a Frankenstein three regions stitched together.</p><p>Before I could even type a correction, Claude flagged it itself.</p><blockquote><p><em>&#8220;The screens I pulled span multiple regions (US, India). This breaks the flow continuity. Re-pulling &#8212; defaulting to US only.&#8221;</em></p></blockquote><p>It re-queried Mobbin. Filtered to one region. Re-laid the screens in Figma in the correct order.</p><p>I didn&#8217;t touch a thing.</p><h2>Why this matters</h2><p>The unlock isn&#8217;t that AI can fetch screens. Anyone can fetch screens.</p><p>The unlock is that the stitching is gone.</p><p>In the old loop, I was the integration layer between Mobbin and Figma. Every screen passed through my hands. Every annotation, every reorder, every &#8220;wait, this is the wrong country&#8221; check, that was me.</p><p>Now the stack does it:</p><ol><li><p>Mobbin MCP: the competitor screen library, queryable by intent.</p></li><li><p><a href="https://github.com/southleft/figma-console-mcp">Figma Console MCP</a>: Claude can open, place, and arrange frames in your Figma file.</p></li><li><p>Claude CLI: the brain that connects the two and self-corrects when the data is messy.</p></li></ol><p>Three pieces. One prompt. A workflow that used to take an afternoon now takes the length of a coffee.</p><h2>Where this gets really good</h2><p>The one-prompt version is the entry point. The real leverage is wrapping it as a Claude skill so you don&#8217;t have to remember the prompt every time.</p><p>I built one and called it <strong>/mobbin</strong>. You type the slash command, name the competitor and flow, and the skill handles everything, fetches from Mobbin, self-corrects region mismatches, places frames in Figma in flow order, then runs a structured analysis pass against the screens.</p><p>The analysis pass is the part most people miss. Fetching is table stakes now. Auto-analysing, checking entry points, friction moments, KYC placement, empty states, error handling &#8212; is where the time actually compounds.</p><p>Chef&#8217;s kiss when it runs clean.</p><h2>Want the /mobbin Claude skill?</h2><p>Below are the exact prompts I use for region filtering and flow assembly, the structured analysis pass Claude runs against the screens, and the Figma layout config so the frames land in the right order every time.</p><p>This playbook is constantly being updated as Mobbin&#8217;s MCP evolve out of beta.</p>
      <p>
          <a href="https://www.designaistack.com/p/how-i-turned-competitor-analysis">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[Claude Design vs DESIGN.md. Here’s the difference.]]></title><description><![CDATA[One is a tool and the other is foundational for your design org]]></description><link>https://www.designaistack.com/p/claude-design-vs-designmd-heres-the</link><guid isPermaLink="false">https://www.designaistack.com/p/claude-design-vs-designmd-heres-the</guid><dc:creator><![CDATA[Sherizan]]></dc:creator><pubDate>Mon, 27 Apr 2026 17:27:33 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!F90x!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffd77e724-b30f-49f1-a630-7810179f5482_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_!F90x!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffd77e724-b30f-49f1-a630-7810179f5482_3840x2010.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!F90x!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffd77e724-b30f-49f1-a630-7810179f5482_3840x2010.png 424w, https://substackcdn.com/image/fetch/$s_!F90x!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffd77e724-b30f-49f1-a630-7810179f5482_3840x2010.png 848w, https://substackcdn.com/image/fetch/$s_!F90x!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffd77e724-b30f-49f1-a630-7810179f5482_3840x2010.png 1272w, https://substackcdn.com/image/fetch/$s_!F90x!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffd77e724-b30f-49f1-a630-7810179f5482_3840x2010.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!F90x!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffd77e724-b30f-49f1-a630-7810179f5482_3840x2010.png" width="1456" height="762" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/fd77e724-b30f-49f1-a630-7810179f5482_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;:5755336,&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/195559094?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffd77e724-b30f-49f1-a630-7810179f5482_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_!F90x!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffd77e724-b30f-49f1-a630-7810179f5482_3840x2010.png 424w, https://substackcdn.com/image/fetch/$s_!F90x!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffd77e724-b30f-49f1-a630-7810179f5482_3840x2010.png 848w, https://substackcdn.com/image/fetch/$s_!F90x!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffd77e724-b30f-49f1-a630-7810179f5482_3840x2010.png 1272w, https://substackcdn.com/image/fetch/$s_!F90x!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffd77e724-b30f-49f1-a630-7810179f5482_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>Last week, two things shipped four days apart.</p><p>Anthropic launched Claude Design on April 17. Google open-sourced DESIGN.md on April 21.</p><p>Both touched design systems. Both promised to make AI agents respect your brand. Most coverage I read treated them as competitors.</p><p>They&#8217;re not.</p><ul><li><p><em>&#8220;Does this replace DESIGN.md?&#8221;</em> </p></li><li><p><em>&#8220;Why would I write DESIGN.md if Claude Design extracts my system automatically?&#8221;</em> </p></li></ul><p>These are good questions. I had the same ones when the launch landed.</p><p>The short answer: DESIGN.md is foundational. Claude Design is a tool that becomes more useful when you have a DESIGN.md to point it at. They&#8217;re not the same layer of your stack.</p><p>Here&#8217;s why.</p><h2>What Claude Design actually does</h2><p>Claude Design launched April 17. Research preview. Available on Pro, Max, Team, and Enterprise plans.</p><p>You describe what you need. It generates a prototype, a slide deck, a landing page, a one-pager. Live HTML. Clickable. Refineable through chat.</p><p>The part that made designers pay attention isn&#8217;t the generation.</p><p>It&#8217;s the onboarding.</p><p>During setup, Claude Design reads your codebase and your design files and extracts a design system automatically. Colors, typography, components, spacing. It builds a token library from whatever you give it. A Figma file. A GitHub repo. A brand PDF. Even a live website URL.</p><p>From that point, every new project inherits the system.</p><p>That&#8217;s a real shortcut. Genuinely useful, especially if your team has been pasting hex values into prompts for the last year.</p><h2>What DESIGN.md actually does</h2><p>DESIGN.md is a different thing entirely.</p><p>It&#8217;s not a design system itself. It&#8217;s not a token format like Style Dictionary or W3C Design Tokens. It&#8217;s not a style guide your team reads.</p><p>It&#8217;s a plain-text file in your repo. YAML at the top for tokens the agent can parse. Markdown below for the rules a human wrote. Every AI agent reads it before generating anything.</p><p>It&#8217;s a contract.</p><p>Version-controlled. Editable by your team. Cursor reads it. Claude Code reads it. Figma Make reads it. Any agent you adopt next year reads it.</p><p>Google Labs shipped the spec. We&#8217;ve been building an extended version using Nova, botim&#8217;s production system, as the worked example.</p><h2>Why the question keeps coming up</h2><p>Both are working on the same upstream problem.</p><p>Agents drift.</p><p>You prompt them today, they get close to your brand. You prompt them again tomorrow, they drift a little. By session four the corner radius is different. The button weight is off. The neutral is too cool.</p><p>Quietly, consistently off.</p><p>That drift is the context tax we&#8217;ve all been paying. Every prompt. Every session. Every project. Paying it again.</p><p>The fix is a system the agent reads every time before it generates. Both DESIGN.md and Claude Design are working on that. They just approach it from different angles.</p><h2>Three things that are actually different</h2><p><strong>1. Where it lives, who reads it</strong></p><p>Claude Design is a single product. The system you upload lives inside it. If you stop paying, change vendors, or Anthropic deprecates the feature, your work goes with it.</p><p>That said, it is still early. Anthropic ships fast, and Claude Design has only been out for a week. My prediction: this gets more interesting. I&#8217;d expect them to expose Claude Design through MCP soon, which would open up a real range of use cases. Reading your DESIGN.md from the repo. Generating output that respects it. Sitting alongside the rest of your stack instead of inside its own box. If that lands, the picture changes for the better.</p><p>For now, though, the system you build inside Claude Design is scoped to Claude Design.</p><p>DESIGN.md lives in your repo. It travels with your code. Cursor reads it. Claude Code reads it. Figma Make reads it. The next agent you adopt next year reads it. It is to design what <code>tsconfig.json</code> is to engineering. A small open file in your repo that every tool in your workflow already knows how to consume.</p><p>One is product-level memory. The other is a portable contract.</p><p>This is the foundational layer. You write it once and every tool, current and future, benefits from it.</p><p><strong>2. The principles layer</strong></p><p>This is where the split is clearest.</p><p>Claude Design extracts <em>what</em> your system is. Colors. Typography. Components. The structural facts.</p><p>DESIGN.md carries <em>why</em> it is the way it is.</p><blockquote><p><em>&#8220;Primary is rationed. Used once per screen for the most important action.&#8221;</em> <em>&#8220;Motion is reassurance, not entertainment. Never animate error states.&#8221;</em> <em>&#8220;When in doubt, remove an option. Decision paralysis is the silent UX killer.&#8221;</em></p></blockquote><p>These aren&#8217;t tokens. They&#8217;re the principles and constraints behind the tokens.</p><p>An agent that knows your hex codes will still sometimes put two primary buttons on the same screen. An agent that also knows your principles is more likely to catch itself.</p><p>The principles are the part you write yourself, and they&#8217;re the part that makes a system feel yours.</p><p><strong>3. Extraction is fast. Writing is deliberate.</strong></p><p>Claude Design infers your system from what it reads. For clean codebases and well-structured Figma files, the inference is good. For messier source code, nested tokens, brand-specific shadows, multi-brand setups, the model is making educated guesses.</p><p>Anthropic&#8217;s own documentation is honest about this.</p><blockquote><p><em>&#8220;The design system import works best with a clean codebase. Messy source code produces messy output.&#8221;</em></p></blockquote><p>DESIGN.md is written by a human who knows the system. You write the corner radius value, and the sentence that explains when to break it.</p><p>Different inputs. Different outputs. Both useful at different stages.</p><h2>&#8220;But Claude Design has a Claude Code handoff. Doesn&#8217;t that solve it?&#8221;</h2><p>Claude Design has an export called &#8220;Send to Claude Code.&#8221; It packages up the design tokens, the component structure, the layout hierarchy, the assets, and a <code>PROMPT.md</code> for Claude Code to read. Claude Code receives the bundle, loads it into context, and builds the feature. It&#8217;s a real workflow. It works today.</p><p>But it isn&#8217;t the same thing as a portable contract.</p><p>Two reasons.</p><p><strong>One. The handoff is a snapshot, not a live link.</strong></p><p>When you export from Claude Design to Claude Code, you&#8217;re shipping the system as it exists right now. If the design system updates inside Claude Design tomorrow, the bundle you handed off yesterday doesn&#8217;t update with it. You re-export. You re-hand-off. Per project. Every time.</p><p>A DESIGN.md in your repo is a single source of truth. Update the file once. Every agent reading it from the repo gets the new version on its next prompt. No re-export. No re-handoff.</p><p><strong>Two. The handoff goes to Claude Code. That&#8217;s it.</strong></p><p>Cursor doesn&#8217;t receive the bundle. Figma Make doesn&#8217;t receive the bundle. The next agent your team adopts in a year doesn&#8217;t receive the bundle. The handoff is built specifically for the Claude Design &#8594; Claude Code loop, which is exactly the loop Anthropic is investing in. That&#8217;s a fine bet for them. Less fine if your team uses more than just Anthropic products.</p><p>DESIGN.md sits in your repo. Every agent already knows how to read a markdown file in a project root. No bundle. No vendor-specific format.</p><p>This is the same reason I think the MCP prediction matters. Once Claude Design exposes itself through MCP, the handoff stops being the only way out. The system can be read from the repo, by Claude Design and by anything else. That changes the loop for the better. But it isn&#8217;t there yet.</p><p>For now, the handoff is one bridge. DESIGN.md is the road.</p><h2>Where it all fits</h2><p>A quick mental model before we go to setup, since this is the part that confuses most readers right now.</p><p>A while back I wrote about <a href="https://www.designaistack.com/p/the-ai-design-map-every-designer">the two modes of design</a>: divergent (explore fast, generate options, find direction) and convergent (refine, build, ship). AI tools belong in one mode or the other.</p><p>Here&#8217;s where the new layer of products fits:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Lxa_!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b51512d-5f5c-4642-9e68-a0479746affa_2400x1572.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Lxa_!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b51512d-5f5c-4642-9e68-a0479746affa_2400x1572.png 424w, https://substackcdn.com/image/fetch/$s_!Lxa_!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b51512d-5f5c-4642-9e68-a0479746affa_2400x1572.png 848w, https://substackcdn.com/image/fetch/$s_!Lxa_!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b51512d-5f5c-4642-9e68-a0479746affa_2400x1572.png 1272w, https://substackcdn.com/image/fetch/$s_!Lxa_!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b51512d-5f5c-4642-9e68-a0479746affa_2400x1572.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Lxa_!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b51512d-5f5c-4642-9e68-a0479746affa_2400x1572.png" width="1456" height="954" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6b51512d-5f5c-4642-9e68-a0479746affa_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;:10564910,&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/195559094?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b51512d-5f5c-4642-9e68-a0479746affa_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_!Lxa_!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b51512d-5f5c-4642-9e68-a0479746affa_2400x1572.png 424w, https://substackcdn.com/image/fetch/$s_!Lxa_!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b51512d-5f5c-4642-9e68-a0479746affa_2400x1572.png 848w, https://substackcdn.com/image/fetch/$s_!Lxa_!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b51512d-5f5c-4642-9e68-a0479746affa_2400x1572.png 1272w, https://substackcdn.com/image/fetch/$s_!Lxa_!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b51512d-5f5c-4642-9e68-a0479746affa_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><p>The thing to notice: DESIGN.md sits underneath everything else.</p><p>Claude Skills are a useful adjacent layer worth a quick word. A Skill is a markdown file in <code>.claude/skills/</code> that an agent loads when the task matches. Your DESIGN.md can be a Skill the agent picks up automatically when it&#8217;s working on UI. Or you can author additional Skills that point at it. Either way, the system is still in your repo. Skills are the loading mechanism, DESIGN.md is the load.</p><p>Divergent tools generate ideas. Convergent tools ship them. Capability layers tell the agent how to behave. The foundation is what every layer reads to stay on-brand.</p><p>Set the foundation first. Everything else stops drifting.</p><h2>So where do you start?</h2><p>Start with DESIGN.md.</p><p>It&#8217;s the foundation. It&#8217;s open. It&#8217;s free. It works with every engineer&#8217;s preferred IDE. It is editable by your team in the same way every other config file in your repo is editable. It will outlast any single AI product, including the one Anthropic shipped last week.</p><p>Drafting it forces you to do work no extraction can do for you. You have to articulate why your system is the way it is. You have to write down the principles, the heuristics, the dark mode handling, the RTL rules, the motion constraints. Those are the parts an agent can&#8217;t infer from a Figma file. They are also the parts that make a system feel like yours and not like every other AI-generated UI.</p><p>Once you have a DESIGN.md, Claude Design becomes more useful, not less. You can point it at the file as part of your project context. The output gets tighter. The drift goes down.</p><p>The reverse is not as true. A Claude Design extraction without a DESIGN.md still leaves you without a portable contract for the rest of your stack.</p><p>DESIGN.md is the foundation. Claude Design is one of many tools that become better on top of it.</p><p>If you want a head start on extraction, Claude Design can produce a useful first-draft token list from a Figma file or repo. Treat the output as raw material. Move it into a DESIGN.md. Add the prose that makes it yours.</p><h2>One thing worth flagging</h2><p>If your codebase is proprietary and you point Claude Design at it, you are sending that code to Anthropic.</p><p>Figma files are different. Parsed locally in your browser. Never uploaded.</p><p>But codebase ingestion goes server-side.</p><p>If you&#8217;re on an Enterprise plan, it&#8217;s worth checking that your contract covers this before pointing Claude at a production repo. Quick conversation with your team. Easy to do, easy to skip.</p><h2>How to set up DESIGN.md for your design org</h2><p>Next week&#8217;s playbook walks through the full setup. The version that&#8217;s working in production at botim, on Nova, today.</p><p>Here&#8217;s what&#8217;s covered:</p><ul><li><p>The 9+5 framework. Nine canonical sections every DESIGN.md should have, plus five production extensions (iconography, motion, RTL, voice, heuristics) that the official spec doesn&#8217;t cover yet</p></li><li><p>The principles layer. The part the spec doesn&#8217;t have. The part that makes a system feel like yours</p></li><li><p>The 10 heuristics every production system needs. Hick&#8217;s Law. Decision paralysis. WCAG minimums. Each cited, each enforceable, each written for the agent to follow</p></li><li><p>The dark mode build workflow. One source-of-truth file, two Stitch-compliant outputs, a small build script that prevents drift</p></li><li><p>The starter template you can fork in five minutes. Same structure, your tokens, your principles</p></li><li><p>The wiring across Cursor, Claude Code, and Figma Make. Same prompt, three setups, side-by-side outputs</p></li></ul><p>Built on a public GitHub repo you can clone, fork, or pull from directly. Apache 2.0, like the upstream spec.</p><p>Take what helps. Adapt it to your team. Skip what doesn&#8217;t fit. The whole point is to give you a foundation you can start writing this week, not a rulebook you have to follow.</p><p>If you&#8217;ve been hand-rolling your own context files for Cursor or Claude Code, this is the one to subscribe for.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!2vTy!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d920032-c31d-4adb-9a7a-eb73d7c9d269_3840x2010.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!2vTy!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d920032-c31d-4adb-9a7a-eb73d7c9d269_3840x2010.png 424w, https://substackcdn.com/image/fetch/$s_!2vTy!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d920032-c31d-4adb-9a7a-eb73d7c9d269_3840x2010.png 848w, https://substackcdn.com/image/fetch/$s_!2vTy!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d920032-c31d-4adb-9a7a-eb73d7c9d269_3840x2010.png 1272w, https://substackcdn.com/image/fetch/$s_!2vTy!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d920032-c31d-4adb-9a7a-eb73d7c9d269_3840x2010.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!2vTy!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d920032-c31d-4adb-9a7a-eb73d7c9d269_3840x2010.png" width="1456" height="762" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1d920032-c31d-4adb-9a7a-eb73d7c9d269_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_!2vTy!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d920032-c31d-4adb-9a7a-eb73d7c9d269_3840x2010.png 424w, https://substackcdn.com/image/fetch/$s_!2vTy!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d920032-c31d-4adb-9a7a-eb73d7c9d269_3840x2010.png 848w, https://substackcdn.com/image/fetch/$s_!2vTy!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d920032-c31d-4adb-9a7a-eb73d7c9d269_3840x2010.png 1272w, https://substackcdn.com/image/fetch/$s_!2vTy!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d920032-c31d-4adb-9a7a-eb73d7c9d269_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[Why Figma might be the last tool we'll love]]></title><description><![CDATA[We&#8217;re not witnessing the death of design. We&#8217;re witnessing the death of design-ing.]]></description><link>https://www.designaistack.com/p/why-figma-might-be-the-last-tool</link><guid isPermaLink="false">https://www.designaistack.com/p/why-figma-might-be-the-last-tool</guid><dc:creator><![CDATA[Sherizan]]></dc:creator><pubDate>Sat, 25 Apr 2026 14:56:35 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!0WJw!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ade9a1c-5643-4706-bf89-201091f3dacd_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_!0WJw!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ade9a1c-5643-4706-bf89-201091f3dacd_2400x1572.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!0WJw!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ade9a1c-5643-4706-bf89-201091f3dacd_2400x1572.png 424w, https://substackcdn.com/image/fetch/$s_!0WJw!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ade9a1c-5643-4706-bf89-201091f3dacd_2400x1572.png 848w, https://substackcdn.com/image/fetch/$s_!0WJw!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ade9a1c-5643-4706-bf89-201091f3dacd_2400x1572.png 1272w, https://substackcdn.com/image/fetch/$s_!0WJw!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ade9a1c-5643-4706-bf89-201091f3dacd_2400x1572.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!0WJw!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ade9a1c-5643-4706-bf89-201091f3dacd_2400x1572.png" width="1456" height="954" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5ade9a1c-5643-4706-bf89-201091f3dacd_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;:4019636,&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/189821241?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ade9a1c-5643-4706-bf89-201091f3dacd_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_!0WJw!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ade9a1c-5643-4706-bf89-201091f3dacd_2400x1572.png 424w, https://substackcdn.com/image/fetch/$s_!0WJw!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ade9a1c-5643-4706-bf89-201091f3dacd_2400x1572.png 848w, https://substackcdn.com/image/fetch/$s_!0WJw!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ade9a1c-5643-4706-bf89-201091f3dacd_2400x1572.png 1272w, https://substackcdn.com/image/fetch/$s_!0WJw!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ade9a1c-5643-4706-bf89-201091f3dacd_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 remember the exact meeting where everything changed.</p><p>It was 2018 at Grab. We were a design team of over a hundred people, all using Sketch, all dropping files into Google Drive, all pretending that was collaboration. It wasn&#8217;t. Version conflicts and naming chaos: <code>homepage_final_v3_FINAL_USE-THIS-ONE.sketch</code>. You know the drill.</p><p>We tried Abstract. We tried Zeplin. Band-aids on a broken workflow.</p><p>Then someone pulled up Figma in our weekly sync. Two cursors on the same canvas. Real time.</p><p>We were sold in under five minutes.</p><p>Migration took three months. A hundred-plus designers exporting out of Sketch, rebuilding libraries, relearning muscle memory. Painful. But nobody asked why. Collaboration wasn&#8217;t a feature of Figma. It was the product.</p><p>Fast forward to today, and I&#8217;m getting d&#233;j&#224; vu.</p><h2>The canvas is moving again</h2><p>A new wave of tools is here, and they don&#8217;t treat pixels as the canvas anymore.</p><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;a89dccbd-ec6a-4d80-a2b1-d11c47f6b56d&quot;,&quot;duration&quot;:null}"></div><p><a href="https://stitch.withgoogle.com/">Google Stitch</a>, <a href="https://paper.design/">Paper</a> and <a href="https://pencil.dev/">Pencil</a> evolved into an AI-native infinite canvas paired with a design agent that reasons across your entire project. You don&#8217;t open a blank file. You describe what you want, drop in a screenshot or a few lines of code, and Stitch generates working UI. They&#8217;re calling it <em>&#8220;vibe designing.&#8221;</em> You can literally talk to it. <em>&#8220;This header feels too heavy.&#8221;</em> It adjusts.</p><p>Then last week, Anthropic launched <a href="https://claude.ai/design">Claude Design</a>. Different bet, same destination. You point Claude at your codebase, and it builds a design system from what already exists. Your colors, typography, components. All reverse-engineered from your live product. Every prototype after that is automatically on-brand. When you&#8217;re ready, it bundles the whole thing for Claude Code, the same AI that writes the production code.</p><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;2413c152-7882-4ab3-b72d-6f779df6c997&quot;,&quot;duration&quot;:null}"></div><p>Three days before that launch, Anthropic&#8217;s CPO Mike Krieger resigned from Figma&#8217;s board.</p><p>Make of that what you will.</p><p>Figma assumed you start with a blank canvas and place elements on it. These tools assume you start with intent and refine the output.</p><p>That&#8217;s a category shift.</p><p>Design used to happen on the canvas. Now it happens in the conversation.</p><blockquote><p><em>I write weekly playbooks for designers using AI. If that&#8217;s you, <a href="https://designaistack.com">subscribe to Design AI Stack</a>.</em></p></blockquote><h2>The wallet screen test</h2><p>A few weeks ago I posted two screenshots in our design team&#8217;s group chat at Botim. One was our Wallet screen, hand-designed by a product designer. The other was the same screen, generated end-to-end by Claude.</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="1456" height="1256" 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;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1256,&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_!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" 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>That moment told me everything I needed to know. AI tools like Claude Code, Cursor, Claude Design, and Stitch are already remarkably good at production-ready UI. Give them a prompt, a design system, and some context, and they ship something competent, consistent, and on-brand.</p><p>Not inspired. But shippable.</p><p>And for the vast majority of screens in the vast majority of products, shippable is exactly what you need.</p><div><hr></div><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;2a6fdc1f-ac38-4227-9122-465af29b1190&quot;,&quot;caption&quot;:&quot;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.&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;showDescription&quot;:true,&quot;showImage&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;I Let Claude Code Design a Figma Screen. Here&#8217;s What Actually Happened.&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:35391892,&quot;name&quot;:&quot;Sherizan&quot;,&quot;bio&quot;:&quot;I build in public. What ships will explain where design is going. I share the full AI stack: Figma, Cursor, workflows, design systems and design leadership.&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9120d45d-b665-4d2a-b1f2-26a84873a795_1175x1177.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2026-02-24T17:15:00.535Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4e171781-0366-436d-a1de-968634f8d1d6_2400x1572.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.designaistack.com/p/i-let-claude-code-design-a-figma&quot;,&quot;section_name&quot;:&quot;Design&quot;,&quot;video_upload_id&quot;:null,&quot;id&quot;:188168362,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:9,&quot;comment_count&quot;:0,&quot;publication_id&quot;:4382156,&quot;publication_name&quot;:&quot;Design AI Stack&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!iYnd!,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&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div><hr></div><h2>What AI still can&#8217;t do</h2><p>This is where designers push back. <em>&#8220;AI can do my job?&#8221;</em></p><p>That&#8217;s not what&#8217;s happening. What&#8217;s happening is more interesting.</p><p>There are two types of design work: <strong>the creative and the mechanical</strong>.</p><p>The creative is the thinking. Understanding a user&#8217;s pain. Reframing a problem. Deciding what <em>not</em> to build.</p><p>The mechanical is the execution. Mockups, variations, specs, assets, consistency.</p><p>The mechanical part? Give it to the machines. Fully. Without guilt.</p><p>The creative part is still ours. And it matters more than ever.</p><p>Here&#8217;s why. AI works by inference. It&#8217;s consumed decades of interface design and is extraordinarily good at recombining what already exists. But recombination is not invention.</p><p>Pinterest didn&#8217;t redesign the grid. They broke it. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!L-iQ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2df3de64-e092-4b8d-bb5c-f5510d2ecdba_3020x1812.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!L-iQ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2df3de64-e092-4b8d-bb5c-f5510d2ecdba_3020x1812.png 424w, https://substackcdn.com/image/fetch/$s_!L-iQ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2df3de64-e092-4b8d-bb5c-f5510d2ecdba_3020x1812.png 848w, https://substackcdn.com/image/fetch/$s_!L-iQ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2df3de64-e092-4b8d-bb5c-f5510d2ecdba_3020x1812.png 1272w, https://substackcdn.com/image/fetch/$s_!L-iQ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2df3de64-e092-4b8d-bb5c-f5510d2ecdba_3020x1812.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!L-iQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2df3de64-e092-4b8d-bb5c-f5510d2ecdba_3020x1812.png" width="1456" height="874" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2df3de64-e092-4b8d-bb5c-f5510d2ecdba_3020x1812.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:874,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:6875200,&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/189821241?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2df3de64-e092-4b8d-bb5c-f5510d2ecdba_3020x1812.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_!L-iQ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2df3de64-e092-4b8d-bb5c-f5510d2ecdba_3020x1812.png 424w, https://substackcdn.com/image/fetch/$s_!L-iQ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2df3de64-e092-4b8d-bb5c-f5510d2ecdba_3020x1812.png 848w, https://substackcdn.com/image/fetch/$s_!L-iQ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2df3de64-e092-4b8d-bb5c-f5510d2ecdba_3020x1812.png 1272w, https://substackcdn.com/image/fetch/$s_!L-iQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2df3de64-e092-4b8d-bb5c-f5510d2ecdba_3020x1812.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>TikTok didn&#8217;t redesign the video feed. They eliminated it. Tinder didn&#8217;t redesign the dating profile. They turned it into a gesture.</p><p>Every one of those came from a human insight about human behavior. Not from analyzing existing patterns and producing a variation. They required someone to look at a problem sideways and have the conviction to ship something that initially seemed too simple or too strange.</p><p>Could an AI have proposed that swiping on faces would become a billion-dollar interaction?</p><p>I doubt it.</p><h2>The interview question</h2><p>I&#8217;ve been asking my peers a question lately: <em>&#8220;As AI disrupts our industry, how do you plan to pivot your career when the work we do is made obsolete by Gen AI tools?&#8221;</em></p><p>Most of them freeze.</p><p>The honest answer is: the job is splitting in two.</p><p>One path is <strong>craft</strong>. The pixel-level, implementation-focused work that&#8217;s defined the profession for fifteen years. This path is being automated, fast. Fighting that is like my old team fighting to stay on Sketch because they&#8217;d customized their toolbars. Nostalgia is not a strategy.</p><p>The other path is <strong>invention</strong>. The messy, ambiguous work of identifying unmet needs and proposing interactions that don&#8217;t yet exist. This is where the value is moving. It rewards skills design school barely teaches: ethnographic research, systems thinking, behavioral psychology, the conviction to propose something genuinely new. They ones who can see what AI cannot. The unspoken frustration. The latent desire. The gesture that hasn&#8217;t been invented yet.</p><h2>Figma&#8217;s legacy</h2><p>Figma&#8217;s real legacy isn&#8217;t the multiplayer cursor or the browser-based editor. It&#8217;s the proof that tools shape culture. Figma made design collaborative, and in doing so, it changed what it meant to be a designer.</p><p>The tools coming next will change the meaning again. When code is the canvas, when an AI agent is your collaborator, when your design system lives in your codebase, &#8220;designer&#8221; will mean something closer to &#8220;inventor&#8221; or &#8220;interaction architect&#8221; or maybe something we don&#8217;t have a word for yet.</p><p>I don&#8217;t know exactly what that looks like. But it feels familiar. That same electricity I felt watching two cursors move on a canvas in 2018, knowing the old way was already over.</p><p>The only question is whether we&#8217;ll spend three months migrating, or three years resisting.</p><div><hr></div><p><strong>Want the actual stack I&#8217;m running on production work?</strong></p><p>The full breakdown. Which tool I reach for when, the prompts that actually hold up under real workloads, where Claude Design, Stitch, Cursor, and Claude Code each fit (and where each one still breaks), and the file structure I use to keep them from stepping on each other.</p><p>This is part of my <em>Design Stack Playbook</em>. Constantly being updated as the tools evolve.</p><p>Paid subscribers get it below.</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><div><hr></div><p><em>Sherizan is Chief of Design at Botim, MENA&#8217;s fastest-growing super app. Previously Design Leader at TikTok and Senior Principal Designer at Grab. He writes <a href="https://designaistack.com">Design AI Stack</a>, where he shares weekly playbooks on AI workflows for designers.</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[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></p><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></channel></rss>