<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: X Alex</title>
    <description>The latest articles on DEV Community by X Alex (@craftappsguide).</description>
    <link>https://dev.to/craftappsguide</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4199442%2Fafb31a9e-5f8e-4759-aeda-1e270bba1ed2.png</url>
      <title>DEV Community: X Alex</title>
      <link>https://dev.to/craftappsguide</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/craftappsguide"/>
    <language>en</language>
    <item>
      <title>Designing clearer link labels for short-drama discovery</title>
      <dc:creator>X Alex</dc:creator>
      <pubDate>Thu, 22 Oct 2026 08:37:43 +0000</pubDate>
      <link>https://dev.to/craftappsguide/designing-clearer-link-labels-for-short-drama-discovery-2jjp</link>
      <guid>https://dev.to/craftappsguide/designing-clearer-link-labels-for-short-drama-discovery-2jjp</guid>
      <description>&lt;p&gt;A short clip often becomes the entry point to a full drama. The next step should be simple: learn what the title is about, then see where the full story can be watched. In practice, search results can mix official platform pages, mirrors, clips, and unrelated uploads. When a discovery site puts all of these behind identical buttons, the destination becomes a surprise.&lt;/p&gt;

&lt;h2&gt;
  
  
  Treat link origin as useful context
&lt;/h2&gt;

&lt;p&gt;An outgoing link should tell the visitor what kind of destination to expect before they click. For a short-drama guide, a label such as "Official platform" or "Third-party upload" is more useful than a generic "Watch now" button. The destination itself still matters, so the label should sit close to the link rather than being buried in a disclaimer.&lt;/p&gt;

&lt;p&gt;This is also a content-model problem. A drama page can keep its story summary separate from its viewing links. That makes it possible to update a destination without rewriting the synopsis and to add context to each link without changing the title's description. If the destination cannot be verified, the page should avoid presenting it as official.&lt;/p&gt;

&lt;h2&gt;
  
  
  Make the limitation visible
&lt;/h2&gt;

&lt;p&gt;Link labels do not guarantee availability or rights. Viewing pages can move, disappear, or vary by region. A guide can be honest about what it knows and still be useful: explain the story, identify the outbound destination, and let the reader decide what to open.&lt;/p&gt;

&lt;p&gt;I work on &lt;a href="https://dravyra.com/" rel="noopener noreferrer"&gt;Dravyra&lt;/a&gt;, an independent short-drama discovery guide. We distinguish official platform links from third-party uploads and keep story summaries separate from viewing destinations. Dravyra is not affiliated with the platforms it links to. This is a small example of a broader UX principle: tell people where a link goes, especially when the destination changes the meaning of the click.&lt;/p&gt;

</description>
      <category>design</category>
      <category>ux</category>
      <category>web</category>
    </item>
    <item>
      <title>FigCraft Auto Layout: a flexible UI card that survives narrow widths</title>
      <dc:creator>X Alex</dc:creator>
      <pubDate>Thu, 22 Oct 2026 02:54:55 +0000</pubDate>
      <link>https://dev.to/craftappsguide/figcraft-auto-layout-a-flexible-ui-card-that-survives-narrow-widths-19kj</link>
      <guid>https://dev.to/craftappsguide/figcraft-auto-layout-a-flexible-ui-card-that-survives-narrow-widths-19kj</guid>
      <description>&lt;p&gt;This is a condensed walkthrough of a layout test documented on &lt;a href="https://artcraftguide.org/tutorials/figcraft-auto-layout/" rel="noopener noreferrer"&gt;Craft Apps Guide&lt;/a&gt;, an independent guide to ArtCraft apps. The example was checked with official FigCraft 0.7.0 on macOS 27.0.1 (Apple Silicon). The results below describe that version and test file; they are not a promise about every release.&lt;/p&gt;

&lt;p&gt;The goal is simple: make a card whose description wraps when space shrinks, while the button stays below the text and the card grows vertically.&lt;/p&gt;

&lt;h2&gt;
  
  
  Build the parent card
&lt;/h2&gt;

&lt;p&gt;Create a frame &lt;strong&gt;400 px wide&lt;/strong&gt; and turn on vertical Auto Layout. Give it &lt;strong&gt;24 px padding&lt;/strong&gt; and a &lt;strong&gt;16 px gap&lt;/strong&gt; between children. Set the frame's vertical sizing to &lt;strong&gt;Hug&lt;/strong&gt;, so its height responds to its content.&lt;/p&gt;

&lt;p&gt;If the children remain at free positions, check that they are actually inside the frame and are not set to absolute positioning.&lt;/p&gt;

&lt;h2&gt;
  
  
  Add content with the right sizing
&lt;/h2&gt;

&lt;p&gt;Place a 32 px circular icon, a 24 px heading, and a 16 px description inside the card. Set the description's horizontal sizing to &lt;strong&gt;Fill&lt;/strong&gt; and its vertical sizing to &lt;strong&gt;Hug&lt;/strong&gt;. That combination keeps the text within the available width while allowing additional lines to increase the card height.&lt;/p&gt;

&lt;p&gt;If the description expands sideways instead of wrapping, change its horizontal sizing from Hug to Fill (or give the text a fixed width).&lt;/p&gt;

&lt;h2&gt;
  
  
  Nest a button
&lt;/h2&gt;

&lt;p&gt;Create a horizontal frame for the button, give it 12 px padding, add the label “Read notes,” and use Hug sizing in both directions. The button should fit its label and remain below the paragraph. If the label overflows, inspect the sizing of both the button frame and its text.&lt;/p&gt;

&lt;h2&gt;
  
  
  Stress-test before reusing it
&lt;/h2&gt;

&lt;p&gt;Duplicate the card into &lt;strong&gt;400 px&lt;/strong&gt; and &lt;strong&gt;260 px&lt;/strong&gt; versions. Test both a short and a longer description, then save and reopen the editable file. In the documented native renderer test, the outcomes were:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Variant&lt;/th&gt;
&lt;th&gt;Rendered size&lt;/th&gt;
&lt;th&gt;Observation&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Short text, 400 px&lt;/td&gt;
&lt;td&gt;400 × 219 px&lt;/td&gt;
&lt;td&gt;One description line&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Long text, 400 px&lt;/td&gt;
&lt;td&gt;400 × 257 px&lt;/td&gt;
&lt;td&gt;Three description lines&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Short text, 260 px&lt;/td&gt;
&lt;td&gt;260 × 219 px&lt;/td&gt;
&lt;td&gt;Button remains inside the padding&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Long text, 260 px&lt;/td&gt;
&lt;td&gt;260 × 295 px&lt;/td&gt;
&lt;td&gt;Five description lines&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;The important check is that narrower or longer text makes the card taller &lt;strong&gt;without covering the button&lt;/strong&gt;. Fix clipping and fixed-height text before using the pattern in a real screen.&lt;/p&gt;

&lt;p&gt;These four cards are separate examples, so edits to one do not update the others. Keep the &lt;code&gt;.figcraft&lt;/code&gt; file as the editable source and use the PNG only as a visual reference. The &lt;a href="https://artcraftguide.org/tutorials/figcraft-auto-layout/" rel="noopener noreferrer"&gt;full FigCraft Auto Layout guide&lt;/a&gt; includes the actual native render, sample file, component example, and source notes.&lt;/p&gt;

</description>
      <category>design</category>
      <category>tutorial</category>
      <category>opensource</category>
      <category>webdev</category>
    </item>
  </channel>
</rss>
