<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>dout.dev - July 2026</title>
    <link>https://dout.dev/months/2026-07/</link>
    <description>RSS feed for posts from July 2026</description>
    <atom:link href="https://dout.dev/months/2026-07.xml" rel="self" type="application/rss+xml" />
    <language>en</language>
    <lastBuildDate>Thu, 30 Jul 2026 00:00:00 GMT</lastBuildDate>
    <item>
      <title>Vanilla JS + LLM Is the Only Way Forward (The Frameworks Did Their Job - Now Let Them Rest)</title>
      <link>https://dout.dev/posts/2026-07-30-vanilla-js-plus-llm-is-the-only-way.html</link>
      <guid isPermaLink="true">https://dout.dev/posts/2026-07-30-vanilla-js-plus-llm-is-the-only-way.html</guid>
      <pubDate>Thu, 30 Jul 2026 00:00:00 GMT</pubDate>
      <description>The industry ran a forty-four-meter circle and landed in your living room</description>
    </item>
    <item>
      <title>How to Write Agent Skills That Actually Trigger (The Art of Not Being Ignored)</title>
      <link>https://dout.dev/posts/2026-07-28-how-to-write-agent-skills-that-actually-trigger.html</link>
      <guid isPermaLink="true">https://dout.dev/posts/2026-07-28-how-to-write-agent-skills-that-actually-trigger.html</guid>
      <pubDate>Tue, 28 Jul 2026 00:00:00 GMT</pubDate>
      <description>The mistake most people make</description>
    </item>
    <item>
      <title>Accessibility by Design (Not by Audit, Not by Checklist, by Design)</title>
      <link>https://dout.dev/posts/2026-07-25-accessibility-by-design.html</link>
      <guid isPermaLink="true">https://dout.dev/posts/2026-07-25-accessibility-by-design.html</guid>
      <pubDate>Sat, 25 Jul 2026 00:00:00 GMT</pubDate>
      <description>We live in an era where technology permeates every aspect of our daily lives. However, not everyone can benefit equally from these advancements. This is where Accessibility by Desi</description>
    </item>
    <item>
      <title>Manual A11y Audit: axe, Keyboard, Screen Reader in an Afternoon (You Have Time for This)</title>
      <link>https://dout.dev/posts/2026-07-23-manual-a11y-audit.html</link>
      <guid isPermaLink="true">https://dout.dev/posts/2026-07-23-manual-a11y-audit.html</guid>
      <pubDate>Thu, 23 Jul 2026 00:00:00 GMT</pubDate>
      <description>The claim</description>
    </item>
    <item>
      <title>pnpm Workspaces for a Single Site: Needed or Not (Spoiler: It Depends)</title>
      <link>https://dout.dev/posts/2026-07-21-pnpm-workspaces-for-a-single-site.html</link>
      <guid isPermaLink="true">https://dout.dev/posts/2026-07-21-pnpm-workspaces-for-a-single-site.html</guid>
      <pubDate>Tue, 21 Jul 2026 00:00:00 GMT</pubDate>
      <description>The question I keep getting</description>
    </item>
    <item>
      <title>Core Web Vitals in Production: LCP, CLS, INP on a Static Blog (Real Numbers, No Bullshit)</title>
      <link>https://dout.dev/posts/2026-07-18-core-web-vitals-in-production.html</link>
      <guid isPermaLink="true">https://dout.dev/posts/2026-07-18-core-web-vitals-in-production.html</guid>
      <pubDate>Sat, 18 Jul 2026 00:00:00 GMT</pubDate>
      <description>The three numbers that matter</description>
    </item>
    <item>
      <title>Honest Focus Traps and Escape: Keyboard-First Menus (Without Locking Users In)</title>
      <link>https://dout.dev/posts/2026-07-14-honest-focus-traps-escape.html</link>
      <guid isPermaLink="true">https://dout.dev/posts/2026-07-14-honest-focus-traps-escape.html</guid>
      <pubDate>Tue, 14 Jul 2026 00:00:00 GMT</pubDate>
      <description>The misconception</description>
    </item>
    <item>
      <title>Strict CSP + Self-Hosted Fonts: unsafe-inline Is a Bad Friend (And I Will Die on This Hill)</title>
      <link>https://dout.dev/posts/2026-07-11-strict-csp-self-hosted-fonts.html</link>
      <guid isPermaLink="true">https://dout.dev/posts/2026-07-11-strict-csp-self-hosted-fonts.html</guid>
      <pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate>
      <description>The claim</description>
    </item>
    <item>
      <title>Dark Mode, Accent Color, `prefers-color-scheme`: the Theme Switcher From Scratch</title>
      <link>https://dout.dev/posts/2026-07-07-dark-mode-accent-prefers-color-scheme.html</link>
      <guid isPermaLink="true">https://dout.dev/posts/2026-07-07-dark-mode-accent-prefers-color-scheme.html</guid>
      <pubDate>Tue, 07 Jul 2026 00:00:00 GMT</pubDate>
      <description>The feature, and the three traps</description>
    </item>
    <item>
      <title>CSS Properties Hierarchy (Or: How I Learned Custom Properties Can Replace Preprocessors)</title>
      <link>https://dout.dev/posts/2026-07-05-css-properties-hierarchy.html</link>
      <guid isPermaLink="true">https://dout.dev/posts/2026-07-05-css-properties-hierarchy.html</guid>
      <pubDate>Sun, 05 Jul 2026 00:00:00 GMT</pubDate>
      <description>Context - The chaos of unorganized CSS</description>
    </item>
    <item>
      <title>A Pragmatic Service Worker: Cache Strategy, Offline, No Abuse (80 Lines, No Drama)</title>
      <link>https://dout.dev/posts/2026-07-04-pragmatic-service-worker.html</link>
      <guid isPermaLink="true">https://dout.dev/posts/2026-07-04-pragmatic-service-worker.html</guid>
      <pubDate>Sat, 04 Jul 2026 00:00:00 GMT</pubDate>
      <description>The case against most service workers</description>
    </item>
  </channel>
</rss>
