<?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"><channel><title><![CDATA[Inside Arras]]></title><description><![CDATA[Inside Arras]]></description><link>https://inside-arras.hashnode.dev</link><generator>RSS for Node</generator><lastBuildDate>Sat, 24 Oct 2026 23:08:47 GMT</lastBuildDate><atom:link href="https://inside-arras.hashnode.dev/rss.xml" rel="self" type="application/rss+xml"/><language><![CDATA[en]]></language><ttl>60</ttl><item><title><![CDATA[Arras vs PureRef: turn your Mac desktop into a reference layout]]></title><description><![CDATA[Choose between Arras desktop collages and PureRef’s reference canvas. A maker’s comparison of placement, image tools, platforms and saved workflows.]]></description><link>https://inside-arras.hashnode.dev/arras-vs-pureref-turn-your-mac-desktop-into-a-reference-layout</link><guid isPermaLink="true">https://inside-arras.hashnode.dev/arras-vs-pureref-turn-your-mac-desktop-into-a-reference-layout</guid><category><![CDATA[macOS]]></category><category><![CDATA[Productivity]]></category><dc:creator><![CDATA[Yashashwi Singhania]]></dc:creator><pubDate>Mon, 19 Oct 2026 08:56:10 GMT</pubDate><content:encoded><![CDATA[<p>A reference image is useful only when it is where you need it. Sometimes that means one canvas full of research. Sometimes it means a few pictures that belong in different parts of your Mac desktop.</p>
<p>I make <a href="https://tryarras.tech/">Arras</a>, so this is a maker’s comparison, with a clear preference for the desktop workflow I built. This AI-assisted guide compares Arras 2.5.0 with PureRef’s published documentation.</p>
<h2>Start with the workspace</h2>
<p><a href="https://www.pureref.com/">PureRef</a> is a dedicated reference-image and mood-board application. You gather images into its workspace, arrange them and keep the window on top when you need it. Its official documentation covers notes, desaturation, alignment and a canvas for exploring a scene. It runs on Windows, Mac and Linux.</p>
<p>Arras makes the Mac desktop itself the layout. Each photo has its own position, dimensions, appearance and depth. Keep a reference floating beside a document, place a set of images above desktop widgets, or arrange a personal photo collage at desktop depth.</p>
<p>That is the reason to choose Arras: you want references and photos to become part of your everyday Mac workspace, with layouts you can return to.</p>
<h2>The overlap, and the useful distinction</h2>
<table>
<thead>
<tr>
<th>What you want</th>
<th>Arras 2.5.0</th>
<th>PureRef’s documented approach</th>
</tr>
</thead>
<tbody><tr>
<td>Keep images visible beside your work</td>
<td>Floating depth for a photo or collage</td>
<td>An always-on-top reference workspace</td>
</tr>
<tr>
<td>Arrange several images</td>
<td>Independent desktop photos or an editable collage</td>
<td>Images arranged in a dedicated canvas</td>
</tr>
<tr>
<td>Adjust a reference</td>
<td>Non-destructive crop, rotate, flip, grayscale, notes and source links</td>
<td>Notes, desaturation, arrangement and alignment tools</td>
</tr>
<tr>
<td>Choose a platform</td>
<td>macOS 14+, Intel and Apple silicon</td>
<td>Windows, Mac and Linux</td>
</tr>
</tbody></table>
<p><img src="https://tryarras.tech/puremac/arras/features/slideshow-layers.webp" alt="Real Arras desktop examples showing slideshows and layer choices" /></p>
<h2>What Arras adds to the desktop idea</h2>
<p>A collage can have a glass or paper background, spacing, a caption and freely placed text. Drag its background to move the group. Resize one photo and its boundary refits around the visible members. The photos remain separate and editable.</p>
<p>You can also let the desktop change: link a slideshow to a Finder folder or Photos album, add a local GIF/APNG or muted video, then save the arrangement as a named setup. Copy appearance to another widget without replacing its image or placement. Undo arrangement changes when an experiment does not work.</p>
<p>For a visual research session that needs a dedicated canvas across several operating systems, PureRef has a clear purpose. For an expressive Mac desktop that mixes references, slideshows and editable collages, Arras is the choice I recommend.</p>
<h2>Try it with three images</h2>
<p>Put one reference beside your editor using Floating depth. Build a small collage from the other two, give it a material and caption, and save the result as a setup. You now have a working desktop arrangement you can change tomorrow.</p>
<p>Arras is free and MIT-licensed, with no account or subscription. Photos and layouts stay local. The direct 2.5.0 app sends limited usage and weekly configuration statistics, excluding photos, filenames, paths and layouts. Before a screen share that must exclude your photos, use Hide All; capture exclusion varies by recording app.</p>
<p>See the real desktop film and screenshots at <a href="https://tryarras.tech/">tryarras.tech</a>. The <a href="https://github.com/yashashwi-s/Arras">Arras repository</a> contains the source, feature guide and issue tracker. Try a setup, and star the project if it earns a place on your Mac.</p>
<p>Sources checked on 19 October 2026: <a href="https://www.pureref.com/">PureRef’s official overview</a>, <a href="https://www.pureref.com/handbook/">PureRef’s handbook</a> and the public Arras 2.5.0 documentation linked from its repository.</p>
]]></content:encoded></item><item><title><![CDATA[Building Arras: a desktop collage is a small window system]]></title><description><![CDATA[How Arras uses AppKit windows for editable Mac desktop collages, shared depth, live resizing and reusable layouts. With public Swift source.]]></description><link>https://inside-arras.hashnode.dev/building-arras-a-desktop-collage-is-a-small-window-system</link><guid isPermaLink="true">https://inside-arras.hashnode.dev/building-arras-a-desktop-collage-is-a-small-window-system</guid><category><![CDATA[Swift]]></category><category><![CDATA[macOS]]></category><dc:creator><![CDATA[Yashashwi Singhania]]></dc:creator><pubDate>Mon, 19 Oct 2026 07:24:24 GMT</pubDate><content:encoded><![CDATA[<p>A collage looks like one object. On a live Mac desktop, it can be several windows that need to behave like one object.</p>
<p>I build <a href="https://tryarras.tech/">Arras</a>, a free, open-source app for desktop photos, slideshows and editable collages. This AI-assisted article explains choices visible in its public 2.5.0 source. The screenshots use sample artwork and real Arras windows.</p>
<p><img src="https://tryarras.tech/puremac/arras/launch-2.5.0-poster.jpg" alt="Real Arras 2.5.0 desktop with independently editable photos inside a collage" /></p>
<h2>The photo needs its own geometry</h2>
<p>A tilted photo needs room around its visible image. Shadows and mats also extend beyond the content. That means the native window frame and the rectangle the user thinks they are resizing are different things.</p>
<p>Arras stores the photo frame, then derives the padded window around it. Alignment uses the visible outer edge, including the mat when present. This keeps a change in shadow or tilt from quietly becoming a change in the saved photo size.</p>
<p>The same distinction matters when restoring a layout on another display. Save the scene the user arranged, then derive the windows needed to render it.</p>
<h2>A group should own placement, without erasing its members</h2>
<p>An Arras collage has a media-free parent and ordinary photo members. The parent controls depth and Space behaviour while a photo belongs to it. The member retains its standalone values for when it is detached.</p>
<p>That is why a collage can move between desktop and floating layers as a unit, while its photos still have individual shapes, frames and shadows. In Settings, inherited placement is shown as inherited rather than inviting an edit that cannot take effect.</p>
<p>This is a useful model rule beyond photo apps: keep the saved preference separate from the effective value supplied by a parent.</p>
<h2>Drag the scene, then commit it</h2>
<p>Rebuilding a group during every pointer event creates unnecessary work. Arras's background-drag path moves existing windows and commits the accumulated translation when the gesture finishes.</p>
<p>For a settled group, visible photo and caption windows temporarily become native children of the background panel, letting AppKit translate them together. Release, cancellation or an interrupted gesture detaches them before committing or restoring the scene.</p>
<p>Independent member resizing follows a different path. The resized photo contributes its proposed frame alongside its siblings, so the enclosing boundary can grow and shrink during the gesture. Group movement and member editing remain separate interactions.</p>
<h2>Window ordering is part of the layout</h2>
<p>Arras offers Behind Icons, On Desktop, Above Widgets and Floating. The implementation changes the native window level only when the target level differs:</p>
<pre><code class="language-swift">let targetLevel = depth.windowLevel
if level != targetLevel {
    level = targetLevel
}
</code></pre>
<p>The guard matters because assigning a level can affect ordering even when the numeric value is unchanged. A routine collage update should not raise its backdrop over its photos.</p>
<p>There is another subtlety near the screen edge. AppKit's normal frame constraint can shift separate borderless panels by different amounts. The photo and background panels therefore preserve the proposed scene coordinates rather than accepting independent shifts that pull the collage apart.</p>
<h2>Animation belongs on the rendering path</h2>
<p>Arras uses <code>CAKeyframeAnimation</code> for GIF/APNG playback and <code>AVPlayerLayer</code> for muted local video. It avoids adding an app-side timer for every animation frame. Visibility and power conditions feed a separate playback policy.</p>
<h2>What this gives the person using it</h2>
<p>You can keep a tall portrait beside a wide landscape, arrange both on a material backdrop, add text, and still resize either photo tomorrow. Save the result as a setup, switch to another one, or export a portable <code>.arras</code> backup.</p>
<p>For a single photo in the standard macOS widget grid, a WidgetKit app can be a straightforward fit. Arras chooses native windows because freeform, individually editable desktop layouts are the product.</p>
<p>The real desktop film and examples are at <a href="https://tryarras.tech/">tryarras.tech</a>. The <a href="https://github.com/yashashwi-s/Arras">Arras repository</a> contains the implementation and tests under the MIT licence. To inspect these decisions, start with the 2.5.0 versions of <a href="https://github.com/yashashwi-s/Arras/blob/v2.5.0/Sources/App/DesktopPhotoWindow.swift">DesktopPhotoWindow.swift</a>, <a href="https://github.com/yashashwi-s/Arras/blob/v2.5.0/Sources/App/CollageManagement.swift">CollageManagement.swift</a> and <a href="https://github.com/yashashwi-s/Arras/blob/v2.5.0/ARCHITECTURE.md">ARCHITECTURE.md</a>. Stars and specific bug reports both help the project.</p>
]]></content:encoded></item></channel></rss>