<?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[Your AI-native design engineer is here.]]></title><description><![CDATA[We write about software experiences, code, and everything in between.]]></description><link>https://blog.jux.io</link><image><url>https://substackcdn.com/image/fetch/$s_!D2FC!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F446848ae-68a4-49f3-aea8-acba5a8a2185_634x634.png</url><title>Your AI-native design engineer is here.</title><link>https://blog.jux.io</link></image><generator>Substack</generator><lastBuildDate>Tue, 14 Apr 2026 00:38:05 GMT</lastBuildDate><atom:link href="https://blog.jux.io/feed" rel="self" type="application/rss+xml"/><copyright><![CDATA[Team Jux]]></copyright><language><![CDATA[en]]></language><webMaster><![CDATA[jux@substack.com]]></webMaster><itunes:owner><itunes:email><![CDATA[jux@substack.com]]></itunes:email><itunes:name><![CDATA[The Jux Squad]]></itunes:name></itunes:owner><itunes:author><![CDATA[The Jux Squad]]></itunes:author><googleplay:owner><![CDATA[jux@substack.com]]></googleplay:owner><googleplay:email><![CDATA[jux@substack.com]]></googleplay:email><googleplay:author><![CDATA[The Jux Squad]]></googleplay:author><itunes:block><![CDATA[Yes]]></itunes:block><item><title><![CDATA[Design token collections, and AI-powered tokenization]]></title><description><![CDATA[Systematically build and maintain your design language - without starting over]]></description><link>https://blog.jux.io/p/design-token-collections-and-ai-powered</link><guid isPermaLink="false">https://blog.jux.io/p/design-token-collections-and-ai-powered</guid><dc:creator><![CDATA[The Jux Squad]]></dc:creator><pubDate>Wed, 23 Jul 2025 14:57:00 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/9454d3a4-6dd7-4108-927c-c470ae5f9c2b_1460x945.webp" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Design systems are powerful - until they&#8217;re painful.</p><p>Managing tokens across light and dark modes, keeping component logic consistent, and syncing it all into production-ready code shouldn&#8217;t be a full-time job.</p><p>And yet, that&#8217;s exactly what we kept hearing from people - so we built something new.</p><p>Introducing <strong>Design Token Collections + AI-powered Tokenization</strong>&#8205;</p><p>a way to extract, organize, and maintain your design tokens directly from existing work.</p><p>It&#8217;s here. And it&#8217;s system-aware, AI-native, and built for your real-world workflows.</p><p></p><h3><strong>Why we did it</strong></h3><p>From day one, Jux has been about rethinking the relationship between design and code - not just exporting one into the other, but blending them.</p><p>But here&#8217;s the thing: many of you didn&#8217;t just want to prototype or tweak. You wanted to migrate your actual design system into Jux - tokens, architecture, logic and all - <strong>without starting from scratch.</strong></p><p>The blocker?</p><p>Manual token creation. Naming conventions. Theme variants. Light/Dark themes support.</p><p>Even with our AI and canvas already in place, token setup was friction. So we asked:</p><p>&#8220;What if Jux could do that for you?&#8221;&#8205;</p><p></p><h3><strong>How we did it</strong></h3><p>The result is a new AI constraint mode in JuxAI, designed specifically for systematic token extraction.</p><p>Here&#8217;s how it works:</p><ul><li><p><strong>Tag components</strong> in your existing design</p></li><li><p>JuxAI detects token candidates: colors, spacing, typography, radii, etc.</p></li><li><p>It builds <strong>organized token collections</strong> - complete with mode variants (e.g. light/dark)</p></li><li><p>You review and approve, or tweak as needed</p></li><li><p>Your token system is now live, reusable, and consistent across your canvas</p><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;bb20e0bb-3a57-4be7-8f6f-9b2559efc4d8&quot;,&quot;duration&quot;:null}"></div><p>We also allow you to <strong>preserve existing token libraries</strong>. If you already have a system, you can prioritize existing tokens over new ones - ensuring your architecture stays intact.</p><p>Tokens then <strong>carry forward into code</strong>, powering live prototypes and reusable components via Jux MCP.</p><p>No duplication. No loss of context. No dev handoff nightmares.</p><p>&#8205;</p><h3><strong>Why it matters (for Jux and for you)</strong></h3><p>This unlocks the full potential of what we call <strong>AI-native design engineering</strong>.</p><p>It means:</p><ul><li><p>You can bring your existing design system into Jux without compromise.</p></li><li><p>You can build net-new systems directly in the editor, and trust they&#8217;ll scale.</p></li><li><p>Tokens are no longer a blocker - they&#8217;re an asset that powers design and code in sync.</p></li><li><p>Prototypes aren&#8217;t throwaway - they&#8217;re production candidates, enriched by your system.</p></li><li><p></p></li></ul><p>For us, it&#8217;s a step toward a bigger vision for Jux:</p><p>A single environment where <strong>design and development speak the same language</strong>, and where systems grow organically through use - not documentation.</p><p>For you, it&#8217;s a chance to stop treating tokens like overhead, and start treating them like infrastructure.<br></p><p>We&#8217;re just getting started, and you can:</p></li></ul><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://app.jux.io/&quot;,&quot;text&quot;:&quot;Get started for free&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://app.jux.io/"><span>Get started for free</span></a></p><p>xoxo &#187; the Jux Squad</p>]]></content:encoded></item><item><title><![CDATA[The Design Engineer: A new career path for juniors ready to bridge design and code?]]></title><description><![CDATA[A unique breed is emerging: a hybrid that integrates design and coding expertise to create production-ready solutions.]]></description><link>https://blog.jux.io/p/the-design-engineer-a-new-career</link><guid isPermaLink="false">https://blog.jux.io/p/the-design-engineer-a-new-career</guid><dc:creator><![CDATA[The Jux Squad]]></dc:creator><pubDate>Thu, 23 Jan 2025 09:13:19 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/9e58a520-0fd9-4616-82cc-b20669763162_1504x940.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>This article was originally posted on the <a href="https://www.jux.io/blog/the-design-engineer-a-new-career-path-for-juniors-ready-to-bridge-design-and-code">positionRelative</a></p><p>The debate about whether designers should code is old news &#8212; and frankly, outdated. The emergence of the Design Engineer role is a testament to that. This hybrid role has existed for years, quietly shaping teams in companies like Notion, Vercel, and others, often under different titles. Traditionally, these were just &#8220;designers,&#8221; but they stood out because of their ability to code and contribute production-ready solutions.</p><p>These individuals broke away from the standard &#8220;designers know code but don&#8217;t code&#8221; mentality. They actively delivered production-ready code in specific areas, prototyped complex interactions in code, or laid a solid foundation for engineers to build upon.</p><p>In 2024, the Design Engineer role became widely recognized, with companies officially embracing the title. <a href="https://www.linkedin.com/posts/tomscottt_most-in-demand-roles-were-working-on-activity-7267437981437775873-X1z7?utm_source=share&amp;utm_medium=member_desktop">Tom Scott</a>, a leading design recruiter, recently listed Design Engineers among the most in-demand roles. Job boards like <a href="https://designengineer.io/">Design Engineer.io</a> have popped up, dedicated exclusively to this emerging position.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!4Ekx!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F276beb62-f79d-4d67-983b-c91cb77373fc_562x451.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!4Ekx!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F276beb62-f79d-4d67-983b-c91cb77373fc_562x451.webp 424w, https://substackcdn.com/image/fetch/$s_!4Ekx!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F276beb62-f79d-4d67-983b-c91cb77373fc_562x451.webp 848w, https://substackcdn.com/image/fetch/$s_!4Ekx!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F276beb62-f79d-4d67-983b-c91cb77373fc_562x451.webp 1272w, https://substackcdn.com/image/fetch/$s_!4Ekx!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F276beb62-f79d-4d67-983b-c91cb77373fc_562x451.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!4Ekx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F276beb62-f79d-4d67-983b-c91cb77373fc_562x451.webp" width="562" height="451" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/276beb62-f79d-4d67-983b-c91cb77373fc_562x451.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:451,&quot;width&quot;:562,&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;:false,&quot;topImage&quot;:true,&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_!4Ekx!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F276beb62-f79d-4d67-983b-c91cb77373fc_562x451.webp 424w, https://substackcdn.com/image/fetch/$s_!4Ekx!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F276beb62-f79d-4d67-983b-c91cb77373fc_562x451.webp 848w, https://substackcdn.com/image/fetch/$s_!4Ekx!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F276beb62-f79d-4d67-983b-c91cb77373fc_562x451.webp 1272w, https://substackcdn.com/image/fetch/$s_!4Ekx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F276beb62-f79d-4d67-983b-c91cb77373fc_562x451.webp 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><figcaption class="image-caption">Tom Scott on the new era of design teams</figcaption></figure></div><p>Interestingly, many of these roles seem tailored to experienced professionals. Yet, the skill set is still new, and the talent pool isn&#8217;t as saturated as traditional design or engineering roles. This creates a unique opportunity for juniors who have the right foundation, mindset, or adaptability to carve a path into this space.</p><h1><strong>What is a Design Engineer?</strong></h1><p>Before exploring how juniors can break into this field, let&#8217;s define the role. Design Engineers are hybrids: professionals who work at the intersection of design and development, bridging the gap between the two.</p><p><a href="https://luhr.co/blog/2024/02/26/the-origins-of-design-engineering/">David Luhr&#8217;s article</a> succinctly describes the role as &#8220;design work with code.&#8221; While simple, this definition underscores its essence. A Design Engineer:</p><ul><li><p><strong>Contributes to the codebase:</strong> Unlike traditional designers, Design Engineers write production-ready code.</p></li><li><p><strong>Makes design decisions:</strong> Unlike traditional engineers, they also handle non-technical design aspects.</p></li></ul><p>They work end-to-end, which involves:</p><ul><li><p>Designing user interfaces and focusing on visual aspects.</p></li><li><p>Crafting interaction-heavy experiences.</p></li><li><p>Prototyping in code.</p></li><li><p>Shipping polished, production-ready front-end implementations.</p></li></ul><p>To succeed in this role, you need:</p><h1><strong>1. Exceptional Visual and UI Skills</strong></h1><p>To excel as a Design Engineer, your UI work must go beyond the basics taught in courses or bootcamps. The expectation is to deliver polished, production-ready designs that align with the standards of companies like <a href="https://linear.app/">Linear</a>, <a href="https://vercel.com/">Vercel</a>, or <a href="https://clerk.com/">Clerk</a>. While you don&#8217;t need to match their style, you should aim for similar attention to detail and balance.</p><ul><li><p><strong>Clean and Balanced Layouts:</strong> Master fundamental design principles like alignment, spacing, and hierarchy. Use tools like Figma&#8217;s Auto Layout to create scalable, consistent designs, and ensure you understand responsive design principles.</p></li><li><p><strong>Typography and Visual Hierarchy:</strong> Strong typography is essential. Learn how to create a clear hierarchy, balance font sizes, and ensure readability across devices. Study typographic scales and experiment with tools like <a href="https://type-scale.com/">Type Scale</a> to refine your skills.</p></li><li><p><strong>Interaction-Ready Design:</strong> Focus on more than static screens &#8212; anticipate hover states, active states, and micro-interactions. Understanding these dynamic elements ensures a smoother transition when your designs move into code.</p></li></ul><h1><strong>2. Front-End Coding Expertise</strong></h1><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!aeJq!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2cca1fc0-5710-4537-a624-188795b4c173_1400x917.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!aeJq!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2cca1fc0-5710-4537-a624-188795b4c173_1400x917.webp 424w, https://substackcdn.com/image/fetch/$s_!aeJq!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2cca1fc0-5710-4537-a624-188795b4c173_1400x917.webp 848w, https://substackcdn.com/image/fetch/$s_!aeJq!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2cca1fc0-5710-4537-a624-188795b4c173_1400x917.webp 1272w, https://substackcdn.com/image/fetch/$s_!aeJq!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2cca1fc0-5710-4537-a624-188795b4c173_1400x917.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!aeJq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2cca1fc0-5710-4537-a624-188795b4c173_1400x917.webp" width="1400" height="917" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2cca1fc0-5710-4537-a624-188795b4c173_1400x917.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:917,&quot;width&quot;:1400,&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_!aeJq!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2cca1fc0-5710-4537-a624-188795b4c173_1400x917.webp 424w, https://substackcdn.com/image/fetch/$s_!aeJq!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2cca1fc0-5710-4537-a624-188795b4c173_1400x917.webp 848w, https://substackcdn.com/image/fetch/$s_!aeJq!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2cca1fc0-5710-4537-a624-188795b4c173_1400x917.webp 1272w, https://substackcdn.com/image/fetch/$s_!aeJq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2cca1fc0-5710-4537-a624-188795b4c173_1400x917.webp 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">Knowing how to use a good component library like shadcn in both design and code can be a real superpower</figcaption></figure></div><p>To turn your designs into production-ready interfaces, you&#8217;ll need a solid understanding of front-end development:</p><ul><li><p><strong>Core Languages:</strong> HTML, CSS, and JavaScript are must-haves.</p></li><li><p><strong>Modern Frameworks:</strong> Familiarize yourself with React, <a href="https://nextjs.org/">Next.js</a>, and styling solutions like <a href="https://tailwindcss.com/">Tailwind CSS</a> or libraries such as <a href="https://ui.shadcn.com/">shadcn</a>.</p></li><li><p><strong>Responsive Design:</strong> Learn to create layouts that adapt seamlessly across screen sizes using CSS Grid or Flexbox.</p></li></ul><h1><strong>3. Motion and Interaction Design Knowledge</strong></h1><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!1tGA!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0095176c-203c-4164-876c-248528948426_412x535.gif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!1tGA!,w_424,c_limit,f_webp,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0095176c-203c-4164-876c-248528948426_412x535.gif 424w, https://substackcdn.com/image/fetch/$s_!1tGA!,w_848,c_limit,f_webp,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0095176c-203c-4164-876c-248528948426_412x535.gif 848w, https://substackcdn.com/image/fetch/$s_!1tGA!,w_1272,c_limit,f_webp,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0095176c-203c-4164-876c-248528948426_412x535.gif 1272w, https://substackcdn.com/image/fetch/$s_!1tGA!,w_1456,c_limit,f_webp,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0095176c-203c-4164-876c-248528948426_412x535.gif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!1tGA!,w_1456,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0095176c-203c-4164-876c-248528948426_412x535.gif" width="412" height="535" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0095176c-203c-4164-876c-248528948426_412x535.gif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:535,&quot;width&quot;:412,&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_!1tGA!,w_424,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0095176c-203c-4164-876c-248528948426_412x535.gif 424w, https://substackcdn.com/image/fetch/$s_!1tGA!,w_848,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0095176c-203c-4164-876c-248528948426_412x535.gif 848w, https://substackcdn.com/image/fetch/$s_!1tGA!,w_1272,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0095176c-203c-4164-876c-248528948426_412x535.gif 1272w, https://substackcdn.com/image/fetch/$s_!1tGA!,w_1456,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0095176c-203c-4164-876c-248528948426_412x535.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><figcaption class="image-caption">A great example of a meticulously crafted micro interaction by Clerk</figcaption></figure></div><p>Motion often defines how users experience an interface, making interaction design a valuable skill for Design Engineers:</p><ul><li><p><strong>Timing and Feedback:</strong> Master principles like easing and duration to create smooth transitions that enhance usability.</p></li><li><p><strong>Practical Tools:</strong> Experiment with Figma&#8217;s Smart Animate or dive deeper with CSS animations and libraries like Framer Motion.</p></li></ul><p>A solid foundation in motion can elevate your designs, but it&#8217;s not always required &#8212; it&#8217;s a great differentiator when applied effectively.</p><p>While specific requirements vary by company or product, these skills form the foundation of a Design Engineer&#8217;s toolkit.</p><h1><strong>Why This Role is a Steep but Rewarding Path</strong></h1><p>At first glance, the Design Engineer role might appear daunting, especially for juniors. The reality is that this path requires deep expertise in at least one domain &#8212; design or development &#8212; before building proficiency in the other. However, for those willing to put in the work, it can be a fulfilling and unique career.</p><h1><strong>1. Build on Existing Strengths</strong></h1><p>This role is particularly suited to individuals with strong foundations in one field:</p><ul><li><p><strong>Developers with an interest in design:</strong> If you already have front-end coding expertise (e.g., React, TypeScript, or Next.js), start learning about design principles, interaction design, and UI craftsmanship.</p></li><li><p><strong>Designers with a knack for technical problem-solving:</strong> Designers who excel in visual/UI design can explore coding fundamentals like HTML, CSS, and JavaScript, then gradually dive into frameworks like Tailwind CSS or component libraries such as <a href="https://ui.shadcn.com/">shadcn</a>.</p></li></ul><h1><strong>2. Leverage AI for Acceleration</strong></h1><p>The learning curve to become a Design Engineer is steep, but leveraging AI tools can significantly accelerate your journey. These tools are not just productivity enhancers but essential companions for learning and experimentation:</p><ul><li><p><strong>For coding:</strong> AI tools like GitHub Copilot or Cursor can help you write better code, debug more efficiently, and learn advanced concepts by generating explanations and examples.</p></li><li><p><strong>For design:</strong> Generative AI tools can assist in exploring visual concepts or automating repetitive tasks, giving you more time to refine and polish your work.</p></li><li><p><strong>Future-proofing your skills:</strong> As AI continues to reshape the developer and designer landscape, becoming proficient in using these tools ensures you stay ahead of the curve.</p></li></ul><p>A word of caution here though. I do honestly believe that this can be an excellent fit for people early in their career and we will see the experience levels start to vary in this field very soon. However this role demands high standards. If you just learned the fundamentals of design and have not worked with code at all before, this is likely not the optimal for you right now. Instead focus on mastering one half of it before approaching the next. There is nothing wrong in learning the fundamentals of the other already but focus will get you further than riding two tracks at the same time if both is new to you.</p><h1><strong>How Juniors Can Break Into the Design Engineer Role</strong></h1><h1><strong>1. Build Your Skills</strong></h1><p>Regardless of your starting point, developing the right skills is critical. Focus on:</p><ul><li><p><strong>Polishing weak areas:</strong> If coding is your weak spot, start by learning HTML, CSS, and JavaScript, then move into React or Next.js. If design is your weakness, master tools like Figma and build your visual design skills. Ideally you bring the basic knowledge here already. Also make sure to utilize AI as a help here. Many designers have accelerated their coding learning curve by making use of ChatGPT, Claude or Cursor to teach and enable them to ship code.</p></li><li><p><strong>Crafting polished projects:</strong> Create small, interaction-heavy components to showcase your ability to merge design and code seamlessly. You can for example use Framer to experiment and play at the intersection by using code components inside the visual builder or play around in VS Code and build your own little playground. Post these on platforms like LinkedIn, <a href="http://post.cv/">Post.cv</a>, or BlueSky to attract attention of other designers.</p></li></ul><h1><strong>2. Curate a Hybrid Portfolio</strong></h1><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!SdEK!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8703bc9-2aed-43e6-b968-911d277dd857_1400x765.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!SdEK!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8703bc9-2aed-43e6-b968-911d277dd857_1400x765.webp 424w, https://substackcdn.com/image/fetch/$s_!SdEK!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8703bc9-2aed-43e6-b968-911d277dd857_1400x765.webp 848w, https://substackcdn.com/image/fetch/$s_!SdEK!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8703bc9-2aed-43e6-b968-911d277dd857_1400x765.webp 1272w, https://substackcdn.com/image/fetch/$s_!SdEK!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8703bc9-2aed-43e6-b968-911d277dd857_1400x765.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!SdEK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8703bc9-2aed-43e6-b968-911d277dd857_1400x765.webp" width="1400" height="765" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b8703bc9-2aed-43e6-b968-911d277dd857_1400x765.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:765,&quot;width&quot;:1400,&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_!SdEK!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8703bc9-2aed-43e6-b968-911d277dd857_1400x765.webp 424w, https://substackcdn.com/image/fetch/$s_!SdEK!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8703bc9-2aed-43e6-b968-911d277dd857_1400x765.webp 848w, https://substackcdn.com/image/fetch/$s_!SdEK!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8703bc9-2aed-43e6-b968-911d277dd857_1400x765.webp 1272w, https://substackcdn.com/image/fetch/$s_!SdEK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8703bc9-2aed-43e6-b968-911d277dd857_1400x765.webp 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">Marcel Wichmann's portfolio is an excellent example of a designer with a hybrid portfolio showcasing excellence in both areas</figcaption></figure></div><p>Your portfolio should showcase your ability to bridge the gap between design and code. Include:</p><ul><li><p>Small interaction patterns or micro-projects that demonstrate specific skills.</p></li><li><p>Two to three larger case studies of shipped or fictional projects. If working alone, document how you would collaborate in a real-world setting.</p></li><li><p>An impressive portfolio website that exemplifies your ability to create functional, visually engaging digital experiences.</p></li></ul><h1><strong>3. Master the Right Tools</strong></h1><p>Tools are something we are going to see a lot of movement in over the next few years in this area as design and code gradually continue to blur. For now a Design Engineer&#8217;s tool stack might look like this:</p><ul><li><p><strong>Design Tools:</strong> Figma for UI/UX design, emphasizing interaction-ready designs with clear annotations.</p></li><li><p><strong>Development Tools:</strong> VS Code, GitHub, and frameworks like Tailwind and Next.js.</p></li><li><p><strong>AI Assistance:</strong> Use coding assistants like Cursor or GitHub Copilot to accelerate your workflow and learn on the job.</p></li></ul><p>There are emerging tools like <a href="https://jux.io/">Jux</a> that are already operating at the intersection of design and code but they do require a firm grasp of both design and development. Similar to how <a href="https://help.figma.com/hc/en-us/articles/23920389749655-Code-Connect">Figma&#8217;s Code Connect</a> integrates designs into codebases, Jux helps teams (or individuals) streamline their processes of translating design to code with one source of truth.</p><h1><strong>4. Network and Learn from Others</strong></h1><p>Engage with professionals in the field:</p><ul><li><p>Reach out to Design Engineers on LinkedIn or <a href="https://www.adplist.org/">ADPList</a> for informational interviews.</p></li><li><p>Join communities or create your own to connect with like-minded individuals and drive conversations about the role.</p></li></ul><h1><strong>The Role&#8217;s Availability and Salary Potential</strong></h1><p>While this role isn&#8217;t about chasing a paycheck, it&#8217;s worth noting that Design Engineers tend to earn more than their design or engineering counterparts.</p><p>US salaries range from $120k to over $250k, with some senior roles crossing $300k.</p><p>Other markets (Europe, Asia) are still developing but represent opportunities for early adopters to gain an edge. I&#8217;d anticipate a rise in these roles for these markets in 2025.</p><h1><strong>Conclusion: The Path Ahead</strong></h1><p>The Design Engineer role is demanding, requiring a unique blend of skills across two disciplines. However, for juniors with the right background and determination, it offers a chance to stand out in the competitive design and development job markets.</p><p>If you&#8217;re a junior with a knack for either visual design or coding, this could be your opportunity to break into an exciting, evolving role that combines the best of both worlds. Dive in, start learning, and explore how you can shape the future of design engineering.</p>]]></content:encoded></item><item><title><![CDATA[Evolving from implicit intent to explicit design rules. Part 2]]></title><description><![CDATA[It's time to come to terms with what we're doing when we design websites, native and web apps, why it's important, and where the future of our design environments is headed.]]></description><link>https://blog.jux.io/p/evolving-from-implicit-intent-to</link><guid isPermaLink="false">https://blog.jux.io/p/evolving-from-implicit-intent-to</guid><dc:creator><![CDATA[Erez Reznikov]]></dc:creator><pubDate>Fri, 03 May 2024 06:01:34 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!1RoU!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F82d959de-9d0c-4f98-98e1-b71804389097_1600x944.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!1RoU!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F82d959de-9d0c-4f98-98e1-b71804389097_1600x944.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!1RoU!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F82d959de-9d0c-4f98-98e1-b71804389097_1600x944.png 424w, https://substackcdn.com/image/fetch/$s_!1RoU!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F82d959de-9d0c-4f98-98e1-b71804389097_1600x944.png 848w, https://substackcdn.com/image/fetch/$s_!1RoU!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F82d959de-9d0c-4f98-98e1-b71804389097_1600x944.png 1272w, https://substackcdn.com/image/fetch/$s_!1RoU!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F82d959de-9d0c-4f98-98e1-b71804389097_1600x944.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!1RoU!,w_2400,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F82d959de-9d0c-4f98-98e1-b71804389097_1600x944.png" width="1200" height="707.967032967033" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/82d959de-9d0c-4f98-98e1-b71804389097_1600x944.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;large&quot;,&quot;height&quot;:859,&quot;width&quot;:1456,&quot;resizeWidth&quot;:1200,&quot;bytes&quot;:30918,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-large" alt="" srcset="https://substackcdn.com/image/fetch/$s_!1RoU!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F82d959de-9d0c-4f98-98e1-b71804389097_1600x944.png 424w, https://substackcdn.com/image/fetch/$s_!1RoU!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F82d959de-9d0c-4f98-98e1-b71804389097_1600x944.png 848w, https://substackcdn.com/image/fetch/$s_!1RoU!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F82d959de-9d0c-4f98-98e1-b71804389097_1600x944.png 1272w, https://substackcdn.com/image/fetch/$s_!1RoU!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F82d959de-9d0c-4f98-98e1-b71804389097_1600x944.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 2nd part of a two-part series.<br>In <a href="https://blog.jux.io/p/evolving-from-implicit-intent-to-aa7">part 1</a> we explored various scenarios for explicit rules involving width and height, different units of measurement, gaps, distributions, and many others, examining what's available in various tools.</p><p>In part 2 I&#8217;ll cover more examples of how different design tools tackle different situations of expressing implicit intent with explicit rules.&nbsp;</p><p>Let&#8217;s dive in.&nbsp;</p><h2>Layout, order and position</h2><p>As we discussed in part 1, adopting a rule-based approach might not be the default for designers, but it proves to be the most scalable.&nbsp;</p><p>Let's contextualize this within layout decisions, particularly when some objects are contained within another object. In this scenario, two sets of rules are relevant:&nbsp;</p><ol><li><p>Rules that dictate how the parent object should order and position it&#8217;s children</p></li><li><p>Rules that specify how each child element should relate or override the parent-imposed rules</p></li></ol><p>I&#8217;ll be providing a number of examples below that put these rules into practice.</p><h3>Example 1: Wrapping cards inside containers</h3><p>Let&#8217;s say that you want to lay out five different cards from left to right, from top to bottom, where only three cards fit the container in its current width:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!9nBV!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b59ceff-5f4c-4e07-bbee-19e937d53a03_862x912.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!9nBV!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b59ceff-5f4c-4e07-bbee-19e937d53a03_862x912.png 424w, https://substackcdn.com/image/fetch/$s_!9nBV!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b59ceff-5f4c-4e07-bbee-19e937d53a03_862x912.png 848w, https://substackcdn.com/image/fetch/$s_!9nBV!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b59ceff-5f4c-4e07-bbee-19e937d53a03_862x912.png 1272w, https://substackcdn.com/image/fetch/$s_!9nBV!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b59ceff-5f4c-4e07-bbee-19e937d53a03_862x912.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!9nBV!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b59ceff-5f4c-4e07-bbee-19e937d53a03_862x912.png" width="488" height="516.3062645011601" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4b59ceff-5f4c-4e07-bbee-19e937d53a03_862x912.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:912,&quot;width&quot;:862,&quot;resizeWidth&quot;:488,&quot;bytes&quot;:7779,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!9nBV!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b59ceff-5f4c-4e07-bbee-19e937d53a03_862x912.png 424w, https://substackcdn.com/image/fetch/$s_!9nBV!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b59ceff-5f4c-4e07-bbee-19e937d53a03_862x912.png 848w, https://substackcdn.com/image/fetch/$s_!9nBV!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b59ceff-5f4c-4e07-bbee-19e937d53a03_862x912.png 1272w, https://substackcdn.com/image/fetch/$s_!9nBV!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4b59ceff-5f4c-4e07-bbee-19e937d53a03_862x912.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>There are a couple of ways to go about it, depending on the design tool. In Figma, the best way would be by assigning <code>auto-layout</code> to the parent frame and setting it to <code>wrap</code>, aligned top left. In <a href="http://jux.io">Jux</a> as in CSS, you would use <code>Flexbox</code> on the parent frame, activating <code>wrap</code>, selecting <code>start</code> in the align, and <code>start</code> in the justify options.</p><p>Lastly, as a refresher from part 1, the implicit intent in this case would be: <em>&#8220;Regardless of the width of the parent container, keep laying more items until there&#8217;s no more space to place another one, then move to the next row and continue from left to right&#8221;</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_!4MbB!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa98f649e-2acd-4a33-8910-de563c6c07fc_1246x812.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!4MbB!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa98f649e-2acd-4a33-8910-de563c6c07fc_1246x812.png 424w, https://substackcdn.com/image/fetch/$s_!4MbB!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa98f649e-2acd-4a33-8910-de563c6c07fc_1246x812.png 848w, https://substackcdn.com/image/fetch/$s_!4MbB!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa98f649e-2acd-4a33-8910-de563c6c07fc_1246x812.png 1272w, https://substackcdn.com/image/fetch/$s_!4MbB!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa98f649e-2acd-4a33-8910-de563c6c07fc_1246x812.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!4MbB!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa98f649e-2acd-4a33-8910-de563c6c07fc_1246x812.png" width="1246" height="812" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a98f649e-2acd-4a33-8910-de563c6c07fc_1246x812.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:812,&quot;width&quot;:1246,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:13216,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!4MbB!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa98f649e-2acd-4a33-8910-de563c6c07fc_1246x812.png 424w, https://substackcdn.com/image/fetch/$s_!4MbB!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa98f649e-2acd-4a33-8910-de563c6c07fc_1246x812.png 848w, https://substackcdn.com/image/fetch/$s_!4MbB!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa98f649e-2acd-4a33-8910-de563c6c07fc_1246x812.png 1272w, https://substackcdn.com/image/fetch/$s_!4MbB!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa98f649e-2acd-4a33-8910-de563c6c07fc_1246x812.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>Example 2: Changing card position while maintaining layout</h3><p>Now, consider the following intent: <em>&#8220;Upon hover, each card &#8216;jumps up&#8217; 20px without disturbing any other card.&#8221;</em> In vector tools, there&#8217;s no way to express the concept&nbsp; of changing something&#8217;s position without affecting the layout. This is only possible if there&#8217;s a positioning mechanism like in CSS that allows for <code>position: relative</code> on the hover state of the card, while still reserving the space occupied by the card. Code-based tools like <a href="http://jux.io">Jux</a>, Webflow can support this, but strangely, Framer does not.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!2qSg!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9d6d001-a0ac-4201-9bf5-3d42fec3d6c0_1378x912.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!2qSg!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9d6d001-a0ac-4201-9bf5-3d42fec3d6c0_1378x912.png 424w, https://substackcdn.com/image/fetch/$s_!2qSg!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9d6d001-a0ac-4201-9bf5-3d42fec3d6c0_1378x912.png 848w, https://substackcdn.com/image/fetch/$s_!2qSg!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9d6d001-a0ac-4201-9bf5-3d42fec3d6c0_1378x912.png 1272w, https://substackcdn.com/image/fetch/$s_!2qSg!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9d6d001-a0ac-4201-9bf5-3d42fec3d6c0_1378x912.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!2qSg!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9d6d001-a0ac-4201-9bf5-3d42fec3d6c0_1378x912.png" width="1378" height="912" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c9d6d001-a0ac-4201-9bf5-3d42fec3d6c0_1378x912.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:912,&quot;width&quot;:1378,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:16942,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!2qSg!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9d6d001-a0ac-4201-9bf5-3d42fec3d6c0_1378x912.png 424w, https://substackcdn.com/image/fetch/$s_!2qSg!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9d6d001-a0ac-4201-9bf5-3d42fec3d6c0_1378x912.png 848w, https://substackcdn.com/image/fetch/$s_!2qSg!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9d6d001-a0ac-4201-9bf5-3d42fec3d6c0_1378x912.png 1272w, https://substackcdn.com/image/fetch/$s_!2qSg!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9d6d001-a0ac-4201-9bf5-3d42fec3d6c0_1378x912.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>Interestingly, Figma supports another positioning option, which is <code>absolute</code>, even within auto-layouted frames. This feature is particularly useful when you want to position an object (like a notification) on the top-right corner of an expandable button and the object will always be pinned in the same place. Moreover, in standard, non auto-layouted frames, all constraints are variations of <code>position: absolute</code> even without explicit selection.&nbsp;</p><p>In code-based tools like Framer, Webflow, and <a href="http://jux.io">Jux</a>, you can simply select the type of positioning to be <code>absolute</code>, regardless of the layout decision. However, in Webflow and <a href="http://jux.io">Jux</a> this is not the default setting.</p><p>Below, you can see how the initial desired intent aligns with the explicit rule in Framer:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!U_MP!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feef1e278-7d68-42f3-a7b0-2337c0bf7639_1436x1030.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!U_MP!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feef1e278-7d68-42f3-a7b0-2337c0bf7639_1436x1030.png 424w, https://substackcdn.com/image/fetch/$s_!U_MP!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feef1e278-7d68-42f3-a7b0-2337c0bf7639_1436x1030.png 848w, https://substackcdn.com/image/fetch/$s_!U_MP!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feef1e278-7d68-42f3-a7b0-2337c0bf7639_1436x1030.png 1272w, https://substackcdn.com/image/fetch/$s_!U_MP!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feef1e278-7d68-42f3-a7b0-2337c0bf7639_1436x1030.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!U_MP!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feef1e278-7d68-42f3-a7b0-2337c0bf7639_1436x1030.png" width="1436" height="1030" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/eef1e278-7d68-42f3-a7b0-2337c0bf7639_1436x1030.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1030,&quot;width&quot;:1436,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:20277,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!U_MP!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feef1e278-7d68-42f3-a7b0-2337c0bf7639_1436x1030.png 424w, https://substackcdn.com/image/fetch/$s_!U_MP!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feef1e278-7d68-42f3-a7b0-2337c0bf7639_1436x1030.png 848w, https://substackcdn.com/image/fetch/$s_!U_MP!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feef1e278-7d68-42f3-a7b0-2337c0bf7639_1436x1030.png 1272w, https://substackcdn.com/image/fetch/$s_!U_MP!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feef1e278-7d68-42f3-a7b0-2337c0bf7639_1436x1030.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>Example 3: Child item independence</h3><p>What if you want most of the items inside a container to stretch, while one item aligns center? For example, when laying out a narrow container with a title and several paragraphs, you may want the title to be center-aligned, but the paragraphs, due to their multiple rows of text, should align left while filling the width of the container.&nbsp;</p><p>The implicit rule could be summarized as follows: <em>&#8220;Make all these items stretch but this item align to the center, regardless of&nbsp; the parent&#8217;s width and the number of items I add&#8221;</em>.</p><p>Below, you can see the explicit rule mechanics in Webflow:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!KYTN!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb93ac9d0-710e-4b7a-a81d-faf11c550db7_1136x1084.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!KYTN!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb93ac9d0-710e-4b7a-a81d-faf11c550db7_1136x1084.png 424w, https://substackcdn.com/image/fetch/$s_!KYTN!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb93ac9d0-710e-4b7a-a81d-faf11c550db7_1136x1084.png 848w, https://substackcdn.com/image/fetch/$s_!KYTN!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb93ac9d0-710e-4b7a-a81d-faf11c550db7_1136x1084.png 1272w, https://substackcdn.com/image/fetch/$s_!KYTN!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb93ac9d0-710e-4b7a-a81d-faf11c550db7_1136x1084.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!KYTN!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb93ac9d0-710e-4b7a-a81d-faf11c550db7_1136x1084.png" width="1136" height="1084" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b93ac9d0-710e-4b7a-a81d-faf11c550db7_1136x1084.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1084,&quot;width&quot;:1136,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:33525,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!KYTN!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb93ac9d0-710e-4b7a-a81d-faf11c550db7_1136x1084.png 424w, https://substackcdn.com/image/fetch/$s_!KYTN!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb93ac9d0-710e-4b7a-a81d-faf11c550db7_1136x1084.png 848w, https://substackcdn.com/image/fetch/$s_!KYTN!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb93ac9d0-710e-4b7a-a81d-faf11c550db7_1136x1084.png 1272w, https://substackcdn.com/image/fetch/$s_!KYTN!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb93ac9d0-710e-4b7a-a81d-faf11c550db7_1136x1084.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><a href="https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb93ac9d0-710e-4b7a-a81d-faf11c550db7_1136x1084.png">For this use case, Webflow is the easiest tool</a>. This is because you can use the &#8216;Flex child&#8217; module to override the general alignment that was set by the parent container&#8212; so you don&#8217;t need empty containers, just the title and paragraphs in one parent container.</p><p>Meanwhile, in Figma, it's more complicated because you can't override the auto layout's alignment setting for a specific child element. Therefore, you'd need to create another frame to contain the title and set it to <code>center</code> alignment.</p><h3>Example 4: Stacking order</h3><p>Let&#8217;s imagine you&#8217;re designing an avatar group widget, where the avatars overlap each other. Your design intent is as follows: <em>&#8220;When hovering over any avatar, it should appear above all others, regardless of its position in the idle state&#8221;.</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_!2fnC!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccadeede-15fe-4472-a351-953a5662bfe3_1180x990.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!2fnC!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccadeede-15fe-4472-a351-953a5662bfe3_1180x990.png 424w, https://substackcdn.com/image/fetch/$s_!2fnC!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccadeede-15fe-4472-a351-953a5662bfe3_1180x990.png 848w, https://substackcdn.com/image/fetch/$s_!2fnC!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccadeede-15fe-4472-a351-953a5662bfe3_1180x990.png 1272w, https://substackcdn.com/image/fetch/$s_!2fnC!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccadeede-15fe-4472-a351-953a5662bfe3_1180x990.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!2fnC!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccadeede-15fe-4472-a351-953a5662bfe3_1180x990.png" width="1180" height="990" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ccadeede-15fe-4472-a351-953a5662bfe3_1180x990.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:990,&quot;width&quot;:1180,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:45988,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!2fnC!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccadeede-15fe-4472-a351-953a5662bfe3_1180x990.png 424w, https://substackcdn.com/image/fetch/$s_!2fnC!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccadeede-15fe-4472-a351-953a5662bfe3_1180x990.png 848w, https://substackcdn.com/image/fetch/$s_!2fnC!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccadeede-15fe-4472-a351-953a5662bfe3_1180x990.png 1272w, https://substackcdn.com/image/fetch/$s_!2fnC!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccadeede-15fe-4472-a351-953a5662bfe3_1180x990.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>To achieve this effect, we need to use a concept called <code>z-index</code>. However, in Figma, doing this would mean giving up the auto layout of the avatars' container. Figma's auto layout allows you to specify whether elements are arranged <code>first on top</code> or <code>last on top</code>, but this feature is primarily geared towards establishing the initial stacking order. It doesn't provide the flexibility to dynamically adjust the <code>z-index</code> of individual elements. The good news is that in CSS and code-like tools, you can specify that in hover state, the <code>z-index</code> will change. This means that in the idle state, the avatars maintain their default <code>z-index</code> order based on the <code>flexbox</code> layout, but upon hovering, the <code>z-index</code> of the hovered avatar is increased, causing it to be above all other avatars.</p><h3>Example 5: Padding and margin</h3><p>The position of children elements inside a juxparent container is also influenced by two important properties of the box model: <code>padding</code> and <code>margin</code>.</p><p><strong>Padding</strong>: A top-left padding of 10px will push any child element 10 pixels from the left and the top sides of the parent container, even if the alignment is to the left. You can think of padding as a short explicit variation to the implicit intent of: <em>&#8220;Make sure nothing comes closer than 10px from the left and top sides, regardless of its size or any other rule it has.&#8221;</em></p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!5JTv!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1bcd48a8-b88c-45ab-84d0-d7f1b874951a_346x272.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!5JTv!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1bcd48a8-b88c-45ab-84d0-d7f1b874951a_346x272.png 424w, https://substackcdn.com/image/fetch/$s_!5JTv!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1bcd48a8-b88c-45ab-84d0-d7f1b874951a_346x272.png 848w, https://substackcdn.com/image/fetch/$s_!5JTv!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1bcd48a8-b88c-45ab-84d0-d7f1b874951a_346x272.png 1272w, https://substackcdn.com/image/fetch/$s_!5JTv!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1bcd48a8-b88c-45ab-84d0-d7f1b874951a_346x272.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!5JTv!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1bcd48a8-b88c-45ab-84d0-d7f1b874951a_346x272.png" width="266" height="209.10982658959537" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1bcd48a8-b88c-45ab-84d0-d7f1b874951a_346x272.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:272,&quot;width&quot;:346,&quot;resizeWidth&quot;:266,&quot;bytes&quot;:3258,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!5JTv!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1bcd48a8-b88c-45ab-84d0-d7f1b874951a_346x272.png 424w, https://substackcdn.com/image/fetch/$s_!5JTv!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1bcd48a8-b88c-45ab-84d0-d7f1b874951a_346x272.png 848w, https://substackcdn.com/image/fetch/$s_!5JTv!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1bcd48a8-b88c-45ab-84d0-d7f1b874951a_346x272.png 1272w, https://substackcdn.com/image/fetch/$s_!5JTv!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1bcd48a8-b88c-45ab-84d0-d7f1b874951a_346x272.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>In Figma, padding only exists for frames with auto-layout turned on; ordinary frames don&#8217;t have this ability. In CSS, however, padding can be applied in all cases and situations, regardless of the display type. It is worth noting though, that when the child element has &#8216;position: absolute&#8217; it completely ignores padding. Similarly, when it has &#8216;position: relative&#8217;, its visual placement ignores padding (although its original placement does respect the padding).</p><p><strong>Margins</strong>: Margins are also useful for defining &#8216;safe&#8217; space on each side of an object or creating space between objects, especially when the spacing is irregular (and using the gap feature in auto-layout / flexbox is not enough). Now, it&#8217;s important to note that neither Figma nor any other vector tool out there supports margins. So, the only way to &#8216;fake a margin&#8217; is to wrap an element with a frame and set the frame&#8217;s padding equal to desired margin distance. But this is problematic because it leads to unnecessary bloat of frames that are only present due to the inability to use margins. In <a href="http://jux.io">Jux</a> (and of course CSS), margins are freely available for use in all directions and cases.&nbsp;</p><p>So basically, when you create a 30px margin from the bottom of a component, your implicit intent would be: <em>&#8220;No matter what, always act as if you take up 30px more space on the bottom&#8221;</em>. This ensures that all instances of that component (or class in CSS) will respect the explicit rule, for any other objects they&#8217;ll encounter throughout the design.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!7byZ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F054cb873-7e0e-448d-80e5-3c0262b9c977_1212x924.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!7byZ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F054cb873-7e0e-448d-80e5-3c0262b9c977_1212x924.png 424w, https://substackcdn.com/image/fetch/$s_!7byZ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F054cb873-7e0e-448d-80e5-3c0262b9c977_1212x924.png 848w, https://substackcdn.com/image/fetch/$s_!7byZ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F054cb873-7e0e-448d-80e5-3c0262b9c977_1212x924.png 1272w, https://substackcdn.com/image/fetch/$s_!7byZ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F054cb873-7e0e-448d-80e5-3c0262b9c977_1212x924.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!7byZ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F054cb873-7e0e-448d-80e5-3c0262b9c977_1212x924.png" width="1212" height="924" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/054cb873-7e0e-448d-80e5-3c0262b9c977_1212x924.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:924,&quot;width&quot;:1212,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:14780,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!7byZ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F054cb873-7e0e-448d-80e5-3c0262b9c977_1212x924.png 424w, https://substackcdn.com/image/fetch/$s_!7byZ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F054cb873-7e0e-448d-80e5-3c0262b9c977_1212x924.png 848w, https://substackcdn.com/image/fetch/$s_!7byZ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F054cb873-7e0e-448d-80e5-3c0262b9c977_1212x924.png 1272w, https://substackcdn.com/image/fetch/$s_!7byZ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F054cb873-7e0e-448d-80e5-3c0262b9c977_1212x924.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>There is a quirk worth mentioning with margins known as &#8216;margin collapse&#8217;. This occurs when two block-level elements (like a div) have margins. For example, say the top one has a <code>margin-bot: 30px</code> and the bottom has <code>margin-top: 50px</code>, the resulting space between the elements will be the larger of the two, not their sum (o 50px, not 80px.)&nbsp;</p><p>Apart from this, the explicit rule aligns well with the implicit intent.</p><h2>Why design tools need to encourage more design options</h2><p>After all of the examples in this article, I hope you can see that the mechanics of expressing implicit intent really depend on the design tool. Some will support fewer options, some will support many more. Code will probably support more than any design tool, but it&#8217;s inaccessible to most designers (Including me! I know my way around HTML and CSS but I don&#8217;t feel comfortable just coding in a code editor. I always prefer to use a UI as a helpful abstraction between myself and actual code).</p><p>This means that the tools that allow the most expressive and intelligent mechanics will be the ones that attract the designers that want to have the most expressive power. And with apps getting more and more dynamic and smart, screen sizes and viewports multiplying in numbers and content being more tailored to every user - I doubt designers can afford not to have the most expressive toolset at their fingertips. My prediction is that future-proof product design tools will be those that gravitate towards an ever-growing &#8216;coverage&#8217; of the layout capabilities of code. They will perhaps never truly cover everything, but the tools that come the closest - will be the ones most worthy of our attention.</p><h2>Helpful resources: The rabbit hole is deep (and empowering)</h2><p>I hope this was an eye-opening, or at least somewhat thought-provoking read and if you&#8217;re interested, I encourage you to learn much more about the design options you have. Here&#8217;s a great list of resources for you to check out, at your own pace:</p><ol><li><p>Christine Vallaure gives an excellent deep dive into Flexbox and CSS grid for designers.<br>https://uxdesign.cc/why-ui-designers-should-understand-flexbox-and-css-grid-e236a9dec37a</p></li><li><p>Brad Frost, the man and the author of <em>Atomic design</em>, discusses grids as a concept between design and development.</p></li><li><p>Jen Simmons shows in many different video tutorials how to implement flexbox and css grid creatively<br>https://www.youtube.com/@LayoutLand</p></li><li><p>The most incredible interactive guides for Flexbox and CSS by Josh Comeau<br>https://www.joshwcomeau.com/css/interactive-guide-to-flexbox/<br>https://www.joshwcomeau.com/css/interactive-guide-to-grid/</p></li><li><p>Webflow has one of the best academy video tutorials series out there:<br>https://university.webflow.com/courses/ultimate-web-design-course</p></li><li><p>Framer has an academy series as well:<br>https://www.framer.com/academy/</p><p> </p></li></ol>]]></content:encoded></item><item><title><![CDATA[Evolving from implicit intent to explicit design rules. Part 1]]></title><description><![CDATA[It's time to come to terms with what we're doing when we design websites, native and web apps, why it's important, and where the future of our design environments is headed.]]></description><link>https://blog.jux.io/p/evolving-from-implicit-intent-to-aa7</link><guid isPermaLink="false">https://blog.jux.io/p/evolving-from-implicit-intent-to-aa7</guid><dc:creator><![CDATA[Erez Reznikov]]></dc:creator><pubDate>Fri, 12 Apr 2024 06:09:09 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!22nF!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1efc54b9-4084-49d6-9afc-badba62998d2_1600x944.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>The solution lies in what I like to think of as declaring explicit design and interaction rules.</p><p></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!22nF!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1efc54b9-4084-49d6-9afc-badba62998d2_1600x944.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!22nF!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1efc54b9-4084-49d6-9afc-badba62998d2_1600x944.png 424w, https://substackcdn.com/image/fetch/$s_!22nF!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1efc54b9-4084-49d6-9afc-badba62998d2_1600x944.png 848w, https://substackcdn.com/image/fetch/$s_!22nF!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1efc54b9-4084-49d6-9afc-badba62998d2_1600x944.png 1272w, https://substackcdn.com/image/fetch/$s_!22nF!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1efc54b9-4084-49d6-9afc-badba62998d2_1600x944.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!22nF!,w_2400,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1efc54b9-4084-49d6-9afc-badba62998d2_1600x944.png" width="1200" height="707.967032967033" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1efc54b9-4084-49d6-9afc-badba62998d2_1600x944.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;large&quot;,&quot;height&quot;:859,&quot;width&quot;:1456,&quot;resizeWidth&quot;:1200,&quot;bytes&quot;:31000,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-large" alt="" srcset="https://substackcdn.com/image/fetch/$s_!22nF!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1efc54b9-4084-49d6-9afc-badba62998d2_1600x944.png 424w, https://substackcdn.com/image/fetch/$s_!22nF!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1efc54b9-4084-49d6-9afc-badba62998d2_1600x944.png 848w, https://substackcdn.com/image/fetch/$s_!22nF!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1efc54b9-4084-49d6-9afc-badba62998d2_1600x944.png 1272w, https://substackcdn.com/image/fetch/$s_!22nF!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1efc54b9-4084-49d6-9afc-badba62998d2_1600x944.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><br>In this article, you&#8217;ll get a deep dive into why explicit design is where the future of our design environments is headed.</p><p>I&#8217;ll walk you through:</p><ul><li><p>What constitutes an interface design decision, beyond what most designers encounter inside vector design tools</p></li><li><p>An easy and intuitive formula to help convey the decision we intend as designers, in a flexible, responsive and robust way</p></li><li><p>How vector tools, code-like tools, and CSS itself allow us to express our desired intent</p></li></ul><p>Let&#8217;s dive in.&nbsp;</p><p></p><h2>First: What is the difference between implicit intent and explicit design rules?</h2><p>To answer this, it&#8217;s helpful to start with a question that every product designer can relate to: &#8220;How do I get <em>these</em> items over <em>there</em>, to align like <em>this</em> and respond like <em>that </em>to changes in screen width&#8221;.</p><p>Depending on the design tools you're using, you can find a solution in one of two ways. You can either design examples and variations that express implicit intent, which is common in vector-based tools like Sketch or Figma. Alternatively, you can declaratively design the rules from which infinite examples might arise, a capability primarily found in code or code-like tools such as Webflow, Framer, or Jux. This distinction highlights that while both approaches aim to fulfill your desired intent, code-like tools offer much more intelligent, responsive, and granular ways to express that intent through actual design rules. In the following sections, I&#8217;ll be walking through real and practical examples to show you exactly what I mean.&nbsp;</p><h2>Example: Box elements</h2><p>Let&#8217;s say I want to space five objects out horizontally inside a box, and I want all of them to be spread out evenly from the left to the right side of the box.&nbsp;</p><p>&nbsp;If I describe the distance of each element from the top left corner I would be able to get my result visually, but I would be doing it by expressing a lot of specific information about each object.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!CkER!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F530c7a25-59c6-4ce7-8107-68db3e34d1a1_1000x290.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!CkER!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F530c7a25-59c6-4ce7-8107-68db3e34d1a1_1000x290.png 424w, https://substackcdn.com/image/fetch/$s_!CkER!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F530c7a25-59c6-4ce7-8107-68db3e34d1a1_1000x290.png 848w, https://substackcdn.com/image/fetch/$s_!CkER!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F530c7a25-59c6-4ce7-8107-68db3e34d1a1_1000x290.png 1272w, https://substackcdn.com/image/fetch/$s_!CkER!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F530c7a25-59c6-4ce7-8107-68db3e34d1a1_1000x290.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!CkER!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F530c7a25-59c6-4ce7-8107-68db3e34d1a1_1000x290.png" width="1000" height="290" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/530c7a25-59c6-4ce7-8107-68db3e34d1a1_1000x290.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:290,&quot;width&quot;:1000,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4453,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!CkER!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F530c7a25-59c6-4ce7-8107-68db3e34d1a1_1000x290.png 424w, https://substackcdn.com/image/fetch/$s_!CkER!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F530c7a25-59c6-4ce7-8107-68db3e34d1a1_1000x290.png 848w, https://substackcdn.com/image/fetch/$s_!CkER!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F530c7a25-59c6-4ce7-8107-68db3e34d1a1_1000x290.png 1272w, https://substackcdn.com/image/fetch/$s_!CkER!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F530c7a25-59c6-4ce7-8107-68db3e34d1a1_1000x290.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 downside here is that it doesn&#8217;t scale. For example, if the amount of objects increases by one or decreases by one, all but the first item of information I used to describe my layout wouldn&#8217;t be relevant. If my box was to grow by 100px - same deal - I&#8217;d have to provide new measurements all over again.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!2Xtx!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6019d78d-237f-4922-8ea8-6aaadbaa7759_1188x290.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!2Xtx!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6019d78d-237f-4922-8ea8-6aaadbaa7759_1188x290.png 424w, https://substackcdn.com/image/fetch/$s_!2Xtx!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6019d78d-237f-4922-8ea8-6aaadbaa7759_1188x290.png 848w, https://substackcdn.com/image/fetch/$s_!2Xtx!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6019d78d-237f-4922-8ea8-6aaadbaa7759_1188x290.png 1272w, https://substackcdn.com/image/fetch/$s_!2Xtx!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6019d78d-237f-4922-8ea8-6aaadbaa7759_1188x290.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!2Xtx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6019d78d-237f-4922-8ea8-6aaadbaa7759_1188x290.png" width="1188" height="290" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6019d78d-237f-4922-8ea8-6aaadbaa7759_1188x290.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:290,&quot;width&quot;:1188,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4837,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!2Xtx!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6019d78d-237f-4922-8ea8-6aaadbaa7759_1188x290.png 424w, https://substackcdn.com/image/fetch/$s_!2Xtx!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6019d78d-237f-4922-8ea8-6aaadbaa7759_1188x290.png 848w, https://substackcdn.com/image/fetch/$s_!2Xtx!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6019d78d-237f-4922-8ea8-6aaadbaa7759_1188x290.png 1272w, https://substackcdn.com/image/fetch/$s_!2Xtx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6019d78d-237f-4922-8ea8-6aaadbaa7759_1188x290.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>The solution to this problem is getting to the broader, bigger picture intent of the action, like: <strong>&#8220;no matter the size of the box or the amount of elements, space them out evenly from left to right&#8221;</strong>. To make this intent true, you could use something like auto-layout (in the canvas tools), Flexbox in CSS, or code-like tools.&nbsp;</p><p>For&nbsp;auto-layout, it would be: auto in the gap field</p><p>in Flexbox, it would be: <code>justify: space-between;</code></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!AMat!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9765850c-dda1-4b25-ac3c-8862b2c4018a_1094x608.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!AMat!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9765850c-dda1-4b25-ac3c-8862b2c4018a_1094x608.png 424w, https://substackcdn.com/image/fetch/$s_!AMat!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9765850c-dda1-4b25-ac3c-8862b2c4018a_1094x608.png 848w, https://substackcdn.com/image/fetch/$s_!AMat!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9765850c-dda1-4b25-ac3c-8862b2c4018a_1094x608.png 1272w, https://substackcdn.com/image/fetch/$s_!AMat!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9765850c-dda1-4b25-ac3c-8862b2c4018a_1094x608.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!AMat!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9765850c-dda1-4b25-ac3c-8862b2c4018a_1094x608.png" width="1094" height="608" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9765850c-dda1-4b25-ac3c-8862b2c4018a_1094x608.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:608,&quot;width&quot;:1094,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:12692,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!AMat!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9765850c-dda1-4b25-ac3c-8862b2c4018a_1094x608.png 424w, https://substackcdn.com/image/fetch/$s_!AMat!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9765850c-dda1-4b25-ac3c-8862b2c4018a_1094x608.png 848w, https://substackcdn.com/image/fetch/$s_!AMat!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9765850c-dda1-4b25-ac3c-8862b2c4018a_1094x608.png 1272w, https://substackcdn.com/image/fetch/$s_!AMat!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9765850c-dda1-4b25-ac3c-8862b2c4018a_1094x608.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>In this case, no matter the width of the screen or the number of items inside the box - the implicit intent correlates perfectly with the explicit rule. And this is exactly how you go from static to dynamic and flexible design.</p><h2>Direct manipulation vs thinking in rules</h2><p>Plot twist: Designers love the ability to directly manipulate elements across the canvas, effortlessly moving, rotating, and placing them exactly where desired. This practice enables us to envision concrete examples of how the system might appear if all variables were fixed. From childhood, we're conditioned to perceive 'artboards' as static and finite, similar to posters. However, this mindset conflicts with the reality of designing products, which entails accommodating various screen resolutions, often with unpredictable amounts of content and variations.</p><p>So, how should these conflicting approaches be resolved?</p><h3><strong>Finding the middle ground</strong></h3><p>One solution is to let designers have a stage where they can play around, moving and resizing things until at least some key states of the system look decent. Only then would they move to the second stage, where they would try to find the best explicit rules for the result they reached while experimenting, this time across all the possible states.</p><p>The second approach would be to expect designers to slowly become so familiar with all the rule-based mechanics that they become intuitive enough for quick experimentation, completely bypassing the need to roam free.&nbsp;</p><p>Both are two ends of the spectrum, with every designer intuitively finding the most comfortable place, somewhere in the middle.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!cCS2!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faac94572-c07b-40bf-8282-a12e135624bc_1108x538.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!cCS2!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faac94572-c07b-40bf-8282-a12e135624bc_1108x538.png 424w, https://substackcdn.com/image/fetch/$s_!cCS2!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faac94572-c07b-40bf-8282-a12e135624bc_1108x538.png 848w, https://substackcdn.com/image/fetch/$s_!cCS2!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faac94572-c07b-40bf-8282-a12e135624bc_1108x538.png 1272w, https://substackcdn.com/image/fetch/$s_!cCS2!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faac94572-c07b-40bf-8282-a12e135624bc_1108x538.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!cCS2!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faac94572-c07b-40bf-8282-a12e135624bc_1108x538.png" width="1108" height="538" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/aac94572-c07b-40bf-8282-a12e135624bc_1108x538.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:538,&quot;width&quot;:1108,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:11666,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!cCS2!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faac94572-c07b-40bf-8282-a12e135624bc_1108x538.png 424w, https://substackcdn.com/image/fetch/$s_!cCS2!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faac94572-c07b-40bf-8282-a12e135624bc_1108x538.png 848w, https://substackcdn.com/image/fetch/$s_!cCS2!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faac94572-c07b-40bf-8282-a12e135624bc_1108x538.png 1272w, https://substackcdn.com/image/fetch/$s_!cCS2!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faac94572-c07b-40bf-8282-a12e135624bc_1108x538.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><h2>Taking advantage of explicit rules</h2><p>The good news is that with the right tools and application, it doesn&#8217;t have to be all or nothing. To understand how explicit rules can be beneficial, it&#8217;s helpful to know the kinds of explicit rules an interactive element might have. We can divide them into two categories:</p><ul><li><p><strong>Self-related, independent visual properties</strong>: This can be things like color, border, text properties etc. They tend to <em>not change</em> and <em>not be responsive</em> to screens, resolutions and amount of user data</p></li><li><p><strong>Relationship-dependent properties</strong>: This can be things like placement inside a parent object, width, height, gap between objects etc. These are the properties this article is going to deal with.</p><p></p></li></ul><p>To better explain how these types of properties work, I&#8217;ll narrow our focus to the web, showcasing examples across three creation environments:</p><ol><li><p>Vector-based tools, such as Figma, Sketch, and Adobe XD, which most designers use for designing websites and web applications</p></li><li><p>Code-based design tools ike Framer, Webflow and Jux</p></li><li><p>CSS</p><p></p></li></ol><h3><strong>Relationship-dependent: Width, height and their derivatives</strong></h3><p>It might be tempting to always specify precise and fixed measurements for the width and the height of elements. But it's probably only the right approach when you're certain the element won't change. For example, if we need the button to grow in width based on the length of its text field, we have to make the width &#8216;dynamic&#8217;.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!KEVf!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b5457b4-8a90-4294-8df8-2caed41088d8_448x214.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!KEVf!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b5457b4-8a90-4294-8df8-2caed41088d8_448x214.png 424w, https://substackcdn.com/image/fetch/$s_!KEVf!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b5457b4-8a90-4294-8df8-2caed41088d8_448x214.png 848w, https://substackcdn.com/image/fetch/$s_!KEVf!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b5457b4-8a90-4294-8df8-2caed41088d8_448x214.png 1272w, https://substackcdn.com/image/fetch/$s_!KEVf!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b5457b4-8a90-4294-8df8-2caed41088d8_448x214.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!KEVf!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b5457b4-8a90-4294-8df8-2caed41088d8_448x214.png" width="356" height="170.05357142857142" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0b5457b4-8a90-4294-8df8-2caed41088d8_448x214.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:214,&quot;width&quot;:448,&quot;resizeWidth&quot;:356,&quot;bytes&quot;:2157,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!KEVf!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b5457b4-8a90-4294-8df8-2caed41088d8_448x214.png 424w, https://substackcdn.com/image/fetch/$s_!KEVf!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b5457b4-8a90-4294-8df8-2caed41088d8_448x214.png 848w, https://substackcdn.com/image/fetch/$s_!KEVf!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b5457b4-8a90-4294-8df8-2caed41088d8_448x214.png 1272w, https://substackcdn.com/image/fetch/$s_!KEVf!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b5457b4-8a90-4294-8df8-2caed41088d8_448x214.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>Let&#8217;s look at how we&#8217;d do this in different tools.</p><p><strong>In Figma:</strong> This would mean switching the button frame to have auto-layout and choosing &#8216;<code>hug content</code>&#8217; for width.&nbsp;</p><p><strong>In Sketch:</strong> You&#8217;d have to set the button to have &#8216;smart layout&#8217; with <code>horizontal</code> resizing.</p><p><strong>In Jux and Webflow</strong>: You&#8217;d set the width field as &#8216;<code>auto</code>&#8217;.</p><p><strong>In Framer</strong>: You&#8217;d have to select &#8216;fit content&#8217; in the dropdown before the auto becomes accessible.</p><p><strong>In CSS</strong>: You would make the <code>width: auto</code></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!-cf4!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf134c0f-06f7-4421-a5e8-3053973e357d_1264x956.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!-cf4!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf134c0f-06f7-4421-a5e8-3053973e357d_1264x956.png 424w, https://substackcdn.com/image/fetch/$s_!-cf4!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf134c0f-06f7-4421-a5e8-3053973e357d_1264x956.png 848w, https://substackcdn.com/image/fetch/$s_!-cf4!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf134c0f-06f7-4421-a5e8-3053973e357d_1264x956.png 1272w, https://substackcdn.com/image/fetch/$s_!-cf4!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf134c0f-06f7-4421-a5e8-3053973e357d_1264x956.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!-cf4!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf134c0f-06f7-4421-a5e8-3053973e357d_1264x956.png" width="1264" height="956" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/bf134c0f-06f7-4421-a5e8-3053973e357d_1264x956.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:956,&quot;width&quot;:1264,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:23557,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!-cf4!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf134c0f-06f7-4421-a5e8-3053973e357d_1264x956.png 424w, https://substackcdn.com/image/fetch/$s_!-cf4!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf134c0f-06f7-4421-a5e8-3053973e357d_1264x956.png 848w, https://substackcdn.com/image/fetch/$s_!-cf4!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf134c0f-06f7-4421-a5e8-3053973e357d_1264x956.png 1272w, https://substackcdn.com/image/fetch/$s_!-cf4!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf134c0f-06f7-4421-a5e8-3053973e357d_1264x956.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>Note that the dynamic &#8216;undefined&#8217; value for the width of the button <em><strong>is the explicit rule</strong></em> here that will work for all the infinite cases of text.</p><h3>Four use cases that prove why explicit rules are important</h3><p>Explicit rules, help you match input or commands with your implicit intent, the directive that will ensure applicability across various resolutions and specifications. Let&#8217;s look at four different situations, where the ability to design with greater flexibility, thanks to explicit rules for width and height, proves beneficial:</p><ol><li><p><em>I want to have a cap on the width of my button</em>: Let&#8217;s say you want to guardrail against a case where the labels on a button are completely out of your control and are user-dependent. Or for example, you don&#8217;t want the &#8216;OK&#8217; button to be as short. In all three platforms, it would make sense to use <code>min-width</code> and <code>max-width</code>. Our implicit intent is now more nuanced: <strong>&#8220;have a width of however is needed, but not less than X and not more than Y.&#8221;</strong></p></li></ol><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Wy94!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d7cefcd-5890-45e6-8730-8729ee3c0e58_2000x628.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Wy94!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d7cefcd-5890-45e6-8730-8729ee3c0e58_2000x628.png 424w, https://substackcdn.com/image/fetch/$s_!Wy94!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d7cefcd-5890-45e6-8730-8729ee3c0e58_2000x628.png 848w, https://substackcdn.com/image/fetch/$s_!Wy94!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d7cefcd-5890-45e6-8730-8729ee3c0e58_2000x628.png 1272w, https://substackcdn.com/image/fetch/$s_!Wy94!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d7cefcd-5890-45e6-8730-8729ee3c0e58_2000x628.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Wy94!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d7cefcd-5890-45e6-8730-8729ee3c0e58_2000x628.png" width="1456" height="457" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4d7cefcd-5890-45e6-8730-8729ee3c0e58_2000x628.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:457,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:112722,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Wy94!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d7cefcd-5890-45e6-8730-8729ee3c0e58_2000x628.png 424w, https://substackcdn.com/image/fetch/$s_!Wy94!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d7cefcd-5890-45e6-8730-8729ee3c0e58_2000x628.png 848w, https://substackcdn.com/image/fetch/$s_!Wy94!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d7cefcd-5890-45e6-8730-8729ee3c0e58_2000x628.png 1272w, https://substackcdn.com/image/fetch/$s_!Wy94!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d7cefcd-5890-45e6-8730-8729ee3c0e58_2000x628.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><ol start="2"><li><p><em>I want to place the button inside a modal, at the bottom</em>: In this case, the implicit intent would be: <strong>&#8220;always stretch side to side, no matter what label it has&#8221;</strong>. To achieve this in Figma, you can use <code>fill-container</code> on the button, provided that the modal itself is set to <code>auto-layout</code>. In Jux, you can do it in a couple of ways, either by specifying 100% on the width of the button, or even better - selecting &#8216;<code>flex</code>&#8217; for the modal and &#8216;<code>stretch</code>&#8217; in the justify selection. In CSS, you can use percentage or flexbox.</p></li></ol><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!KQVU!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F810e2b5f-aa75-460e-a952-63ca32ae435c_738x704.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!KQVU!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F810e2b5f-aa75-460e-a952-63ca32ae435c_738x704.png 424w, https://substackcdn.com/image/fetch/$s_!KQVU!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F810e2b5f-aa75-460e-a952-63ca32ae435c_738x704.png 848w, https://substackcdn.com/image/fetch/$s_!KQVU!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F810e2b5f-aa75-460e-a952-63ca32ae435c_738x704.png 1272w, https://substackcdn.com/image/fetch/$s_!KQVU!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F810e2b5f-aa75-460e-a952-63ca32ae435c_738x704.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!KQVU!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F810e2b5f-aa75-460e-a952-63ca32ae435c_738x704.png" width="430" height="410.18970189701895" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/810e2b5f-aa75-460e-a952-63ca32ae435c_738x704.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:704,&quot;width&quot;:738,&quot;resizeWidth&quot;:430,&quot;bytes&quot;:19183,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!KQVU!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F810e2b5f-aa75-460e-a952-63ca32ae435c_738x704.png 424w, https://substackcdn.com/image/fetch/$s_!KQVU!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F810e2b5f-aa75-460e-a952-63ca32ae435c_738x704.png 848w, https://substackcdn.com/image/fetch/$s_!KQVU!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F810e2b5f-aa75-460e-a952-63ca32ae435c_738x704.png 1272w, https://substackcdn.com/image/fetch/$s_!KQVU!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F810e2b5f-aa75-460e-a952-63ca32ae435c_738x704.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><ol start="3"><li><p><em>I want to limit the modal from being taller than 80% of the height of the viewport</em>: In this case, the implicit intent would be: <strong>&#8220;Grow height up to fit the content until you hit 80% of the viewport height and then stop&#8221;</strong>. Viewports come in many sizes. In Vector tools - you&#8217;re out of luck. There&#8217;s nothing you can specify as an explicit rule.. In code-like tools, you can specify an <code>80VH</code> (viewport height) unit on the max-height of the modal, while leaving the height itself on <code>auto</code>.</p></li></ol><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Pq51!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b65b873-40ad-43c9-b1a4-f29d3ed597b7_1620x1172.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Pq51!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b65b873-40ad-43c9-b1a4-f29d3ed597b7_1620x1172.png 424w, https://substackcdn.com/image/fetch/$s_!Pq51!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b65b873-40ad-43c9-b1a4-f29d3ed597b7_1620x1172.png 848w, https://substackcdn.com/image/fetch/$s_!Pq51!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b65b873-40ad-43c9-b1a4-f29d3ed597b7_1620x1172.png 1272w, https://substackcdn.com/image/fetch/$s_!Pq51!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b65b873-40ad-43c9-b1a4-f29d3ed597b7_1620x1172.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Pq51!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b65b873-40ad-43c9-b1a4-f29d3ed597b7_1620x1172.png" width="1456" height="1053" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0b65b873-40ad-43c9-b1a4-f29d3ed597b7_1620x1172.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1053,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:58342,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Pq51!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b65b873-40ad-43c9-b1a4-f29d3ed597b7_1620x1172.png 424w, https://substackcdn.com/image/fetch/$s_!Pq51!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b65b873-40ad-43c9-b1a4-f29d3ed597b7_1620x1172.png 848w, https://substackcdn.com/image/fetch/$s_!Pq51!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b65b873-40ad-43c9-b1a4-f29d3ed597b7_1620x1172.png 1272w, https://substackcdn.com/image/fetch/$s_!Pq51!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b65b873-40ad-43c9-b1a4-f29d3ed597b7_1620x1172.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><ol start="4"><li><p><em>I want the modal to be divided up into 3 columns with different ratios of their widths</em>: Here, the implicit intent would be something like: <strong>&#8220;Divide into three columns, make the width of the first column 30%, the second 50% and the third 20% of the container width, and a 16px gap between them&#8221;</strong>. In this case the width of each column cannot be fixed, but it also cannot be &#8216;<code>auto</code>&#8217;.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!eqO0!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6f0a28e-8ba5-4445-adab-e644674ed3e4_2000x1115.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!eqO0!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6f0a28e-8ba5-4445-adab-e644674ed3e4_2000x1115.png 424w, https://substackcdn.com/image/fetch/$s_!eqO0!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6f0a28e-8ba5-4445-adab-e644674ed3e4_2000x1115.png 848w, https://substackcdn.com/image/fetch/$s_!eqO0!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6f0a28e-8ba5-4445-adab-e644674ed3e4_2000x1115.png 1272w, https://substackcdn.com/image/fetch/$s_!eqO0!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6f0a28e-8ba5-4445-adab-e644674ed3e4_2000x1115.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!eqO0!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6f0a28e-8ba5-4445-adab-e644674ed3e4_2000x1115.png" width="1456" height="812" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c6f0a28e-8ba5-4445-adab-e644674ed3e4_2000x1115.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:812,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:369022,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!eqO0!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6f0a28e-8ba5-4445-adab-e644674ed3e4_2000x1115.png 424w, https://substackcdn.com/image/fetch/$s_!eqO0!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6f0a28e-8ba5-4445-adab-e644674ed3e4_2000x1115.png 848w, https://substackcdn.com/image/fetch/$s_!eqO0!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6f0a28e-8ba5-4445-adab-e644674ed3e4_2000x1115.png 1272w, https://substackcdn.com/image/fetch/$s_!eqO0!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6f0a28e-8ba5-4445-adab-e644674ed3e4_2000x1115.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>To specify an explicit rule in Sketch, Xd, or Figma, there&#8217;s really nothing you can do for that to work responsively. In Framer, for example, you can use a percentage unit on the width of each column by choosing <code>relative</code> in the dropdown. In Webflow, you can use Flexbox on the modal and specify the ratio using <code>flex: grow</code> number on the columns to adjust the ratios.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!5UlJ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F55ca3bba-541f-429d-9952-fc00a9affdf2_1126x772.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!5UlJ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F55ca3bba-541f-429d-9952-fc00a9affdf2_1126x772.png 424w, https://substackcdn.com/image/fetch/$s_!5UlJ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F55ca3bba-541f-429d-9952-fc00a9affdf2_1126x772.png 848w, https://substackcdn.com/image/fetch/$s_!5UlJ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F55ca3bba-541f-429d-9952-fc00a9affdf2_1126x772.png 1272w, https://substackcdn.com/image/fetch/$s_!5UlJ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F55ca3bba-541f-429d-9952-fc00a9affdf2_1126x772.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!5UlJ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F55ca3bba-541f-429d-9952-fc00a9affdf2_1126x772.png" width="1126" height="772" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/55ca3bba-541f-429d-9952-fc00a9affdf2_1126x772.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:772,&quot;width&quot;:1126,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:19574,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!5UlJ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F55ca3bba-541f-429d-9952-fc00a9affdf2_1126x772.png 424w, https://substackcdn.com/image/fetch/$s_!5UlJ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F55ca3bba-541f-429d-9952-fc00a9affdf2_1126x772.png 848w, https://substackcdn.com/image/fetch/$s_!5UlJ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F55ca3bba-541f-429d-9952-fc00a9affdf2_1126x772.png 1272w, https://substackcdn.com/image/fetch/$s_!5UlJ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F55ca3bba-541f-429d-9952-fc00a9affdf2_1126x772.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>In CSS and in both Framer and Webflow you can also use grid on the modal and specify each column's ratio using the fr unit (which stands for fraction), all while keeping the width of the modal on auto. Either of these solutions is a nuanced but powerful explicit design rule.</p></li></ol><div><hr></div><p>This concludes Part 1.</p><p>In Part 2 we will dive deeper and see how layout order, position, padding and margin also benefit from flexible and explicit design rules.</p>]]></content:encoded></item><item><title><![CDATA[ 🌊Tokens, campfires, and more tokens]]></title><description><![CDATA[Our crew goes deep this month with tokens - why, how and what it is.]]></description><link>https://blog.jux.io/p/tokens-campfires-and-more-tokens</link><guid isPermaLink="false">https://blog.jux.io/p/tokens-campfires-and-more-tokens</guid><pubDate>Fri, 01 Sep 2023 08:34:30 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/6bb00be4-ac1b-46d9-b58a-ff55bb0e9bcb_792x698.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Hey September, bye August. </p><p>We've curated the finest pieces of written content by the most talented individuals, and we may be somewhat biased &#129299;</p><h2>Core, Semantic, and Specific tokens</h2><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Gyg_!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf6a0855-3915-47e3-ba89-52e0479b6a10_1108x550.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Gyg_!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf6a0855-3915-47e3-ba89-52e0479b6a10_1108x550.png 424w, https://substackcdn.com/image/fetch/$s_!Gyg_!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf6a0855-3915-47e3-ba89-52e0479b6a10_1108x550.png 848w, https://substackcdn.com/image/fetch/$s_!Gyg_!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf6a0855-3915-47e3-ba89-52e0479b6a10_1108x550.png 1272w, https://substackcdn.com/image/fetch/$s_!Gyg_!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf6a0855-3915-47e3-ba89-52e0479b6a10_1108x550.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Gyg_!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf6a0855-3915-47e3-ba89-52e0479b6a10_1108x550.png" width="696" height="345.48736462093865" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/af6a0855-3915-47e3-ba89-52e0479b6a10_1108x550.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:550,&quot;width&quot;:1108,&quot;resizeWidth&quot;:696,&quot;bytes&quot;:135777,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Gyg_!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf6a0855-3915-47e3-ba89-52e0479b6a10_1108x550.png 424w, https://substackcdn.com/image/fetch/$s_!Gyg_!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf6a0855-3915-47e3-ba89-52e0479b6a10_1108x550.png 848w, https://substackcdn.com/image/fetch/$s_!Gyg_!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf6a0855-3915-47e3-ba89-52e0479b6a10_1108x550.png 1272w, https://substackcdn.com/image/fetch/$s_!Gyg_!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faf6a0855-3915-47e3-ba89-52e0479b6a10_1108x550.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><span class="mention-wrap" data-attrs="{&quot;name&quot;:&quot;Assaf Mashiah&quot;,&quot;id&quot;:101998407,&quot;type&quot;:&quot;user&quot;,&quot;url&quot;:null,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/76c26a66-b9fa-4cd4-90a1-cc4223a1c19a_1037x1037.jpeg&quot;,&quot;uuid&quot;:&quot;2bcae062-eda3-4892-8127-1cd2842e1f98&quot;}" data-component-name="MentionToDOM"></span> <a href="https://mashiah.substack.com/p/juxs-token-structure-core-semantic">TLDRed</a> about streamlining product design communication in design &amp; engineering teams, and the JUX approach to tokens types framework: <br>Core, Semantic, and Specific structure.</p><div class="pullquote"><p>&#8220;The recipe to structure tokens includes creating all the core tokens first, followed by semantic and specific tokens for one mode, duplicating the token set for the other mode, and changing all the semantic and specific tokens to point to the correct core tokens for that mode.&#8221;</p></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://mashiah.substack.com/p/juxs-token-structure-core-semantic&quot;,&quot;text&quot;:&quot;Read it here&quot;,&quot;action&quot;:null,&quot;class&quot;:&quot;button-wrapper&quot;}" data-component-name="ButtonCreateButton"><a class="button primary button-wrapper" href="https://mashiah.substack.com/p/juxs-token-structure-core-semantic"><span>Read it here</span></a></p><p></p><h2>Campfires &amp; new ideas</h2><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!hPBd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e057e47-86f6-453a-915a-abb7003e73cb_1208x822.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!hPBd!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e057e47-86f6-453a-915a-abb7003e73cb_1208x822.png 424w, https://substackcdn.com/image/fetch/$s_!hPBd!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e057e47-86f6-453a-915a-abb7003e73cb_1208x822.png 848w, https://substackcdn.com/image/fetch/$s_!hPBd!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e057e47-86f6-453a-915a-abb7003e73cb_1208x822.png 1272w, https://substackcdn.com/image/fetch/$s_!hPBd!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e057e47-86f6-453a-915a-abb7003e73cb_1208x822.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!hPBd!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e057e47-86f6-453a-915a-abb7003e73cb_1208x822.png" width="1208" height="822" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3e057e47-86f6-453a-915a-abb7003e73cb_1208x822.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:822,&quot;width&quot;:1208,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:199878,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!hPBd!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e057e47-86f6-453a-915a-abb7003e73cb_1208x822.png 424w, https://substackcdn.com/image/fetch/$s_!hPBd!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e057e47-86f6-453a-915a-abb7003e73cb_1208x822.png 848w, https://substackcdn.com/image/fetch/$s_!hPBd!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e057e47-86f6-453a-915a-abb7003e73cb_1208x822.png 1272w, https://substackcdn.com/image/fetch/$s_!hPBd!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e057e47-86f6-453a-915a-abb7003e73cb_1208x822.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><span class="mention-wrap" data-attrs="{&quot;name&quot;:&quot;Tom Nipravsky&quot;,&quot;id&quot;:101118148,&quot;type&quot;:&quot;user&quot;,&quot;url&quot;:null,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/585c91f4-58ff-436b-af61-ce43c8a2434b_2738x1825.jpeg&quot;,&quot;uuid&quot;:&quot;6b72de26-1ef2-4092-8c31-c2c9958e62ab&quot;}" data-component-name="MentionToDOM"></span> <a href="https://www.linkedin.com/posts/tom-nipravsky-7b7aa021_were-having-physical-and-digital-campfires-activity-7083721065155239936-pD6I">discussed</a> about a product workshop we ran, and noted that our channel "competition_and_inspiration" on Slack was the fifth most popular channel. He immediately attributed this to the comfort we at JUX feel around the "campfire" of sharing new concepts and upcoming features from tools and industries. Building better products? It all begins with collaboration and idea-sharing.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.linkedin.com/posts/tom-nipravsky-7b7aa021_were-having-physical-and-digital-campfires-activity-7083721065155239936-pD6I&quot;,&quot;text&quot;:&quot;Check it out&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.linkedin.com/posts/tom-nipravsky-7b7aa021_were-having-physical-and-digital-campfires-activity-7083721065155239936-pD6I"><span>Check it out</span></a></p><p></p><h2>An in-depth tokens guide</h2><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!b2uo!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F54c8ac9d-7435-4a0f-93c4-9af3c9e5c1dd_1354x544.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!b2uo!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F54c8ac9d-7435-4a0f-93c4-9af3c9e5c1dd_1354x544.png 424w, https://substackcdn.com/image/fetch/$s_!b2uo!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F54c8ac9d-7435-4a0f-93c4-9af3c9e5c1dd_1354x544.png 848w, https://substackcdn.com/image/fetch/$s_!b2uo!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F54c8ac9d-7435-4a0f-93c4-9af3c9e5c1dd_1354x544.png 1272w, https://substackcdn.com/image/fetch/$s_!b2uo!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F54c8ac9d-7435-4a0f-93c4-9af3c9e5c1dd_1354x544.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!b2uo!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F54c8ac9d-7435-4a0f-93c4-9af3c9e5c1dd_1354x544.png" width="1354" height="544" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/54c8ac9d-7435-4a0f-93c4-9af3c9e5c1dd_1354x544.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:544,&quot;width&quot;:1354,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:201529,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!b2uo!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F54c8ac9d-7435-4a0f-93c4-9af3c9e5c1dd_1354x544.png 424w, https://substackcdn.com/image/fetch/$s_!b2uo!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F54c8ac9d-7435-4a0f-93c4-9af3c9e5c1dd_1354x544.png 848w, https://substackcdn.com/image/fetch/$s_!b2uo!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F54c8ac9d-7435-4a0f-93c4-9af3c9e5c1dd_1354x544.png 1272w, https://substackcdn.com/image/fetch/$s_!b2uo!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F54c8ac9d-7435-4a0f-93c4-9af3c9e5c1dd_1354x544.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><span class="mention-wrap" data-attrs="{&quot;name&quot;:&quot;Erez Reznikov&quot;,&quot;id&quot;:24129481,&quot;type&quot;:&quot;user&quot;,&quot;url&quot;:null,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/61d080e7-0ebc-4300-85e5-f647528fcd5f_365x365.jpeg&quot;,&quot;uuid&quot;:&quot;573fb2ff-eac8-41a3-820c-9a135f104704&quot;}" data-component-name="MentionToDOM"></span> wrote a 2-part series about the real value of tokens in his publication <span class="mention-wrap" data-attrs="{&quot;name&quot;:&quot;Design Nuance&quot;,&quot;id&quot;:1859838,&quot;type&quot;:&quot;pub&quot;,&quot;url&quot;:&quot;https://open.substack.com/pub/erezreznikov&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2db67e10-cd1f-4831-8146-b654ddf4587f_256x256.png&quot;,&quot;uuid&quot;:&quot;3282f494-e37c-4fdd-ba50-e5041a1b0b10&quot;}" data-component-name="MentionToDOM"></span>. </p><p><a href="https://erezreznikov.substack.com/p/the-real-value-of-tokens-part-1">Part 1</a>, focuses on &#8220;Why tokens&#8221; and <a href="https://erezreznikov.substack.com/p/the-real-value-of-tokens-part-2">Part 2</a> dives into a more subjective prescription of how to conceptualize and model the work on tokens in a design system.</p><div class="pullquote"><p>&#8220;&#8230;The right time to switch to tokens is now. If you don&#8217;t - other designers will, and you&#8217;ll be at a <strong>competitive disadvantage</strong> for product design jobs pretty soon.&#8221;</p></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://erezreznikov.substack.com/p/the-real-value-of-tokens-part-1&quot;,&quot;text&quot;:&quot;Part 1&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://erezreznikov.substack.com/p/the-real-value-of-tokens-part-1"><span>Part 1</span></a></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://erezreznikov.substack.com/p/the-real-value-of-tokens-part-2&quot;,&quot;text&quot;:&quot;Part 2&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://erezreznikov.substack.com/p/the-real-value-of-tokens-part-2"><span>Part 2</span></a></p><div><hr></div><p><strong>That&#8217;s a wrap, and it&#8217;s a button state of mind.</strong><br><br>*Applied for early access?*</p><p>We're still testing our private alpha, and we&#8217;re onboarding people in batches every month.</p><p><strong>If this email reminded you that you need a better design and dev experience in your team - simply reply and we will get you set up ASAP. </strong></p>]]></content:encoded></item><item><title><![CDATA[🏠 New domain, fresh new identity]]></title><description><![CDATA[Drimz.io is now legacy. Welcome, jux.io]]></description><link>https://blog.jux.io/p/new-domain-fresh-new-identity</link><guid isPermaLink="false">https://blog.jux.io/p/new-domain-fresh-new-identity</guid><dc:creator><![CDATA[The Jux Squad]]></dc:creator><pubDate>Wed, 02 Aug 2023 10:19:46 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/623c5afc-4cd4-4bba-8ed9-5d2d93cdaed0_950x750.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_!Oo0_!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7fe0b0de-0f18-4a98-8df9-c50066cfbcf6_1496x410.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Oo0_!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7fe0b0de-0f18-4a98-8df9-c50066cfbcf6_1496x410.png 424w, https://substackcdn.com/image/fetch/$s_!Oo0_!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7fe0b0de-0f18-4a98-8df9-c50066cfbcf6_1496x410.png 848w, https://substackcdn.com/image/fetch/$s_!Oo0_!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7fe0b0de-0f18-4a98-8df9-c50066cfbcf6_1496x410.png 1272w, https://substackcdn.com/image/fetch/$s_!Oo0_!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7fe0b0de-0f18-4a98-8df9-c50066cfbcf6_1496x410.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Oo0_!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7fe0b0de-0f18-4a98-8df9-c50066cfbcf6_1496x410.png" width="1456" height="399" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7fe0b0de-0f18-4a98-8df9-c50066cfbcf6_1496x410.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:399,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:38932,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Oo0_!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7fe0b0de-0f18-4a98-8df9-c50066cfbcf6_1496x410.png 424w, https://substackcdn.com/image/fetch/$s_!Oo0_!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7fe0b0de-0f18-4a98-8df9-c50066cfbcf6_1496x410.png 848w, https://substackcdn.com/image/fetch/$s_!Oo0_!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7fe0b0de-0f18-4a98-8df9-c50066cfbcf6_1496x410.png 1272w, https://substackcdn.com/image/fetch/$s_!Oo0_!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7fe0b0de-0f18-4a98-8df9-c50066cfbcf6_1496x410.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>Hey believer. You recently asked for early access to Drimz, or maybe you're just a friend or relative. don't recall? Same ones who build a code-based design tool so product designers can design the actual, real product as it will be used in production. <br><br>We wanted to make it official - Bye-bye Drimz, Hello <strong>JUX</strong>.</p><p>And the best part? Our newly ultra-to-the-point website is <a href="http://jux.io">live</a> &#127870;</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!e-w3!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb861275f-3837-4ed8-b8ac-9dbbacc80e4e_1920x1080.gif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!e-w3!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb861275f-3837-4ed8-b8ac-9dbbacc80e4e_1920x1080.gif 424w, https://substackcdn.com/image/fetch/$s_!e-w3!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb861275f-3837-4ed8-b8ac-9dbbacc80e4e_1920x1080.gif 848w, https://substackcdn.com/image/fetch/$s_!e-w3!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb861275f-3837-4ed8-b8ac-9dbbacc80e4e_1920x1080.gif 1272w, https://substackcdn.com/image/fetch/$s_!e-w3!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb861275f-3837-4ed8-b8ac-9dbbacc80e4e_1920x1080.gif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!e-w3!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb861275f-3837-4ed8-b8ac-9dbbacc80e4e_1920x1080.gif" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b861275f-3837-4ed8-b8ac-9dbbacc80e4e_1920x1080.gif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2289609,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/gif&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&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_!e-w3!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb861275f-3837-4ed8-b8ac-9dbbacc80e4e_1920x1080.gif 424w, https://substackcdn.com/image/fetch/$s_!e-w3!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb861275f-3837-4ed8-b8ac-9dbbacc80e4e_1920x1080.gif 848w, https://substackcdn.com/image/fetch/$s_!e-w3!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb861275f-3837-4ed8-b8ac-9dbbacc80e4e_1920x1080.gif 1272w, https://substackcdn.com/image/fetch/$s_!e-w3!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb861275f-3837-4ed8-b8ac-9dbbacc80e4e_1920x1080.gif 1456w" sizes="100vw"></picture><div></div></div></a></figure></div><p><strong>4 reasons why we rebranded to JUX</strong>;</p><ol><li><p>JUX, an abbreviation of <strong>Juxtaposition</strong>, is where you place two concepts, objects or personalities next to each other, thereby highlighting their innate differences and similarities. From our user feedback we also heard sentiments like "JUX? it's like juice!" and "<strong>J</strong>ust <strong>UX</strong>! love it!" </p></li><li><p>Our logo is a button, the most known and used component e-v-e-r. A minor tweak in a simple button can have a <em>massive</em> impact on a business's growth.</p></li><li><p>The logo is also a reminder of the design and development relationship when creating a component, modifying and affecting it.</p></li><li><p>We embedded the JUX button's code into our caps' inner fabric. The color palette is based on four main colors used in engineers&#8217; CLI daily. We currently have two types of caps - Type1 for engineers, Type2 for designers. Because they don't speak the same language. Get it?</p></li></ol><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!E1Vh!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F01ac3083-bf71-4c23-92e9-b08ed76d3023_1206x640.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!E1Vh!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F01ac3083-bf71-4c23-92e9-b08ed76d3023_1206x640.png 424w, https://substackcdn.com/image/fetch/$s_!E1Vh!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F01ac3083-bf71-4c23-92e9-b08ed76d3023_1206x640.png 848w, https://substackcdn.com/image/fetch/$s_!E1Vh!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F01ac3083-bf71-4c23-92e9-b08ed76d3023_1206x640.png 1272w, https://substackcdn.com/image/fetch/$s_!E1Vh!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F01ac3083-bf71-4c23-92e9-b08ed76d3023_1206x640.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!E1Vh!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F01ac3083-bf71-4c23-92e9-b08ed76d3023_1206x640.png" width="284" height="150.71310116086235" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/01ac3083-bf71-4c23-92e9-b08ed76d3023_1206x640.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:640,&quot;width&quot;:1206,&quot;resizeWidth&quot;:284,&quot;bytes&quot;:48988,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!E1Vh!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F01ac3083-bf71-4c23-92e9-b08ed76d3023_1206x640.png 424w, https://substackcdn.com/image/fetch/$s_!E1Vh!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F01ac3083-bf71-4c23-92e9-b08ed76d3023_1206x640.png 848w, https://substackcdn.com/image/fetch/$s_!E1Vh!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F01ac3083-bf71-4c23-92e9-b08ed76d3023_1206x640.png 1272w, https://substackcdn.com/image/fetch/$s_!E1Vh!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F01ac3083-bf71-4c23-92e9-b08ed76d3023_1206x640.png 1456w" sizes="100vw"></picture><div></div></div></a></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!WYvb!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f980aca-79de-4350-b6fa-f234306905b7_2076x1002.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!WYvb!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f980aca-79de-4350-b6fa-f234306905b7_2076x1002.png 424w, https://substackcdn.com/image/fetch/$s_!WYvb!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f980aca-79de-4350-b6fa-f234306905b7_2076x1002.png 848w, https://substackcdn.com/image/fetch/$s_!WYvb!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f980aca-79de-4350-b6fa-f234306905b7_2076x1002.png 1272w, https://substackcdn.com/image/fetch/$s_!WYvb!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f980aca-79de-4350-b6fa-f234306905b7_2076x1002.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!WYvb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f980aca-79de-4350-b6fa-f234306905b7_2076x1002.png" width="1456" height="703" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5f980aca-79de-4350-b6fa-f234306905b7_2076x1002.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:703,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1229274,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!WYvb!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f980aca-79de-4350-b6fa-f234306905b7_2076x1002.png 424w, https://substackcdn.com/image/fetch/$s_!WYvb!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f980aca-79de-4350-b6fa-f234306905b7_2076x1002.png 848w, https://substackcdn.com/image/fetch/$s_!WYvb!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f980aca-79de-4350-b6fa-f234306905b7_2076x1002.png 1272w, https://substackcdn.com/image/fetch/$s_!WYvb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f980aca-79de-4350-b6fa-f234306905b7_2076x1002.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><figcaption class="image-caption">Bold ha?</figcaption></figure></div><p>*Our visual identity is an always-evolving WIP, like an open brand book. If you're interested in a comprehensive walkthrough about the process and how it's going, mail <span class="mention-wrap" data-attrs="{&quot;name&quot;:&quot;Gal Rubin&quot;,&quot;id&quot;:48037457,&quot;type&quot;:&quot;user&quot;,&quot;url&quot;:null,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/dd1c8a4b-ae91-4adb-9b2d-9004beab99bd_828x802.jpeg&quot;,&quot;uuid&quot;:&quot;dde4beac-5874-4ce0-96e3-f8c0e00c114c&quot;}" data-component-name="MentionToDOM"></span> <a href="mailto:gal@jux.io">here</a> or <a href="https://www.linkedin.com/in/galrubinx/">DM</a>.</p><div><hr></div><p>A three-second scrolling nostalgia for our old website:</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!VWvE!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F27626d4f-ada4-4b79-ade8-b92f1ae3f5b6_1920x1080.gif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!VWvE!,w_424,c_limit,f_webp,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F27626d4f-ada4-4b79-ade8-b92f1ae3f5b6_1920x1080.gif 424w, https://substackcdn.com/image/fetch/$s_!VWvE!,w_848,c_limit,f_webp,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F27626d4f-ada4-4b79-ade8-b92f1ae3f5b6_1920x1080.gif 848w, https://substackcdn.com/image/fetch/$s_!VWvE!,w_1272,c_limit,f_webp,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F27626d4f-ada4-4b79-ade8-b92f1ae3f5b6_1920x1080.gif 1272w, https://substackcdn.com/image/fetch/$s_!VWvE!,w_1456,c_limit,f_webp,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F27626d4f-ada4-4b79-ade8-b92f1ae3f5b6_1920x1080.gif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!VWvE!,w_1456,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F27626d4f-ada4-4b79-ade8-b92f1ae3f5b6_1920x1080.gif" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/27626d4f-ada4-4b79-ade8-b92f1ae3f5b6_1920x1080.gif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:8661157,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/gif&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!VWvE!,w_424,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F27626d4f-ada4-4b79-ade8-b92f1ae3f5b6_1920x1080.gif 424w, https://substackcdn.com/image/fetch/$s_!VWvE!,w_848,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F27626d4f-ada4-4b79-ade8-b92f1ae3f5b6_1920x1080.gif 848w, https://substackcdn.com/image/fetch/$s_!VWvE!,w_1272,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F27626d4f-ada4-4b79-ade8-b92f1ae3f5b6_1920x1080.gif 1272w, https://substackcdn.com/image/fetch/$s_!VWvE!,w_1456,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F27626d4f-ada4-4b79-ade8-b92f1ae3f5b6_1920x1080.gif 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p><strong>Thank you</strong> drimz.io, we're grateful for you becoming a part of our lives. For being a part of the brand, storage, domain, and personality. It was a fantastic start &#9825;<br>And now, it&#8217;s a button state of mind.</p><p></p><div><hr></div><p><br>*Applied for early access?*</p><p>We're still testing our private alpha, so we will onboard people in batches every month, starting this month. </p><p><strong>If this email reminded you that you </strong><em><strong>really</strong></em><strong> need a better design and dev experience - simply reply and we will get you set up ASAP. </strong></p>]]></content:encoded></item></channel></rss>