<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Dondi Bogusky Notes</title>
    <description>Writing, projects, and notes on building useful web experiences.</description>
    <link>https://dondibogusky.com/</link>
    <atom:link href="https://dondibogusky.com/rss.xml" rel="self" type="application/rss+xml" />
    <language>en</language>
    <lastBuildDate>Sat, 09 May 2026 21:09:26 GMT</lastBuildDate>
    <item>
      <title>Small Improvements That Compound</title>
      <description>Recent site refinements reduced hidden asset work, quieted the visual system, and kept the static baseline fast.</description>
      <link>https://dondibogusky.com/notes/small-improvements-that-compound/</link>
      <guid isPermaLink="true">https://dondibogusky.com/notes/small-improvements-that-compound/</guid>
      <pubDate>Fri, 08 May 2026 00:00:00 GMT</pubDate>
      <category>Performance</category>
      <category>Design</category>
      <content:encoded><![CDATA[<p>The best site improvements are often the ones that remove work. They make the page feel calmer, load with less waste, and leave fewer details for the browser to carry around.</p>
<p>This round focused on small decisions with visible consequences: less invisible media, a quieter background, and a cleaner visual baseline.</p>
<h2>Remove Invisible Work</h2>
<p>The footer and author metadata used to include a hidden avatar image for microformats. It was not visible, but the browser still had to request it.</p>
<p>That image is gone. The site no longer ships an asset just to describe something readers never see, and the author metadata stays focused on names, links, and content.</p>
<h2>Quiet the Surface</h2>
<p>The old background used layered gradients and a full-page grid. It gave the site texture, but it also made every page feel a little busier than the writing needed.</p>
<p>The new background is simpler: a paper base with soft color at the top of the page. The brand colors are still present, but they no longer compete with the content.</p>
<h2>Keep the Baseline Honest</h2>
<p>None of this changes the site model. Pages are still static by default, interactive islands still have specific jobs, and the build still validates the same SEO, performance, and search checks.</p>
<p>That is the useful kind of polish: fewer bytes, fewer distractions, and the same durable shape underneath.</p>]]></content:encoded>
    </item>
    <item>
      <title>Vue Islands With a Job</title>
      <description>A rule of thumb for using Vue in Astro without accidentally building a full SPA.</description>
      <link>https://dondibogusky.com/notes/vue-islands/</link>
      <guid isPermaLink="true">https://dondibogusky.com/notes/vue-islands/</guid>
      <pubDate>Sat, 02 May 2026 00:00:00 GMT</pubDate>
      <category>Vue</category>
      <category>Frontend</category>
      <content:encoded><![CDATA[<p>Vue islands work best when they have a specific job. They should not be a reflexive wrapper around every component.</p>
<p>For this site, Vue handles two focused surfaces: topic filtering on the homepage and search on the search page. Both involve user input, live state, and UI updates that are awkward without client JavaScript.</p>
<h2>The Test</h2>
<p>Before adding an island, ask whether the reader needs to manipulate state after the page loads. If the answer is no, an Astro component is likely enough.</p>
<p>That test keeps the JavaScript budget tied to user value instead of framework habit.</p>
<h2>The Payoff</h2>
<p>The site keeps the authoring ergonomics of components, the runtime profile of static HTML, and just enough interactivity to make browsing the archive pleasant.</p>]]></content:encoded>
    </item>
    <item>
      <title>Search That Belongs on a Static Site</title>
      <description>Pagefind adds local search without turning the whole site into an application.</description>
      <link>https://dondibogusky.com/notes/search-that-belongs/</link>
      <guid isPermaLink="true">https://dondibogusky.com/notes/search-that-belongs/</guid>
      <pubDate>Fri, 24 Apr 2026 00:00:00 GMT</pubDate>
      <category>Search</category>
      <category>Pagefind</category>
      <content:encoded><![CDATA[<p>Search is most useful when it feels native to the site and does not require a service account, network dependency, or full app runtime.</p>
<p>Pagefind fits that job. It indexes the built HTML and ships a compact static search bundle. The search UI can live as a small island because that is where client interactivity matters.</p>
<h2>Build Time Is the Right Time</h2>
<p>The index is generated after Astro builds the pages. That means the search corpus is exactly what readers see, including MDX output and static project pages.</p>
<p>This is also operationally simple. Deploy the <code>dist</code> directory and the Pagefind assets go with it.</p>
<h2>A Better Boundary</h2>
<p>The rest of the site stays static. The search page owns the client behavior, and every other page remains focused on reading, scanning, and navigation.</p>]]></content:encoded>
    </item>
    <item>
      <title>Astro as the Default</title>
      <description>Why a writing site benefits from static-first architecture and deliberate islands.</description>
      <link>https://dondibogusky.com/notes/astro-as-default/</link>
      <guid isPermaLink="true">https://dondibogusky.com/notes/astro-as-default/</guid>
      <pubDate>Sat, 18 Apr 2026 00:00:00 GMT</pubDate>
      <category>Astro</category>
      <category>Architecture</category>
      <content:encoded><![CDATA[<p>Astro is a good default for a writing site because the common path is content, navigation, and search. Most pages should ship as HTML with minimal JavaScript, and the rare interactive feature should earn its place.</p>
<h2>Static First</h2>
<p>The baseline experience should be readable before any client code wakes up. That keeps the site resilient, fast, and easy to move between hosts.</p>
<p>Interactive code still belongs here, but it works best when it is attached to a clear user action: filtering topics, searching the archive, previewing media, or changing a view.</p>
<h2>Content Shapes the UI</h2>
<p>MDX keeps the writing close to the components that help explain it. That makes the site feel like a notebook instead of a CMS form, while Astro content collections keep the metadata typed and predictable.</p>
<p>The result is a site that can grow from a few notes into a durable archive without changing the underlying model.</p>]]></content:encoded>
    </item>
  </channel>
</rss>
