<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>shuu11-dev</title>
    <link>https://shuu11-dev.pages.dev</link>
    <description>In-depth technical articles on Claude Code, MCP, agent development, Rust, and embedded systems.</description>
    <item>
      <title>Before Asking an AI Agent to Implement, Write Task Boundaries</title>
      <link>https://shuu11-dev.pages.dev/articles/agent-task-boundary-notes-before-implementation/</link>
      <description>How to reduce AI coding agent rework by writing clear goal, scope, do-not-change, and verification boundaries before implementation starts.</description>
      <language>en</language>
      <pubDate>Wed, 01 Jul 2026 00:00:00 GMT</pubDate>
      <guid>https://shuu11-dev.pages.dev/articles/agent-task-boundary-notes-before-implementation/</guid>
    </item>
    <item>
      <title>AIエージェントに実装を頼む前に境界条件メモを書く</title>
      <link>https://shuu11-dev.pages.dev/ja/articles/agent-task-boundary-notes-before-implementation/</link>
      <description>AIエージェントに実装を任せる前に、変更範囲、触らない領域、検証条件を短く書くことで、手戻りと不要な改修を減らす方法を解説します。</description>
      <language>ja</language>
      <pubDate>Wed, 01 Jul 2026 00:00:00 GMT</pubDate>
      <guid>https://shuu11-dev.pages.dev/ja/articles/agent-task-boundary-notes-before-implementation/</guid>
    </item>
    <item>
      <title>Do Not Start Environment-Dependent Bugs with a Code Fix</title>
      <link>https://shuu11-dev.pages.dev/articles/environment-dependent-bugs-dont-start-with-code-fix/</link>
      <description>How to diagnose Windows, OneDrive, Node.js, and Next.js environment-dependent failures before changing application code.</description>
      <language>en</language>
      <pubDate>Wed, 01 Jul 2026 00:00:00 GMT</pubDate>
      <guid>https://shuu11-dev.pages.dev/articles/environment-dependent-bugs-dont-start-with-code-fix/</guid>
    </item>
    <item>
      <title>環境依存バグはコード修正から始めない</title>
      <link>https://shuu11-dev.pages.dev/ja/articles/environment-dependent-bugs-dont-start-with-code-fix/</link>
      <description>Windows、OneDrive、Node.js、Next.jsで起きる環境依存バグを、コードの問題と決めつけずに切り分ける手順を解説します。</description>
      <language>ja</language>
      <pubDate>Wed, 01 Jul 2026 00:00:00 GMT</pubDate>
      <guid>https://shuu11-dev.pages.dev/ja/articles/environment-dependent-bugs-dont-start-with-code-fix/</guid>
    </item>
    <item>
      <title>Design MCP Tool Descriptions as UI for AI Agents</title>
      <link>https://shuu11-dev.pages.dev/articles/mcp-tool-description-ai-interface-design/</link>
      <description>How to write MCP tool descriptions, argument schemas, return notes, and errors so AI agents choose and call tools correctly.</description>
      <language>en</language>
      <pubDate>Wed, 01 Jul 2026 00:00:00 GMT</pubDate>
      <guid>https://shuu11-dev.pages.dev/articles/mcp-tool-description-ai-interface-design/</guid>
    </item>
    <item>
      <title>MCPツールのdescriptionはAI向けUIとして設計する</title>
      <link>https://shuu11-dev.pages.dev/ja/articles/mcp-tool-description-ai-interface-design/</link>
      <description>MCPツールのdescriptionや引数説明を、AIが正しく選びやすいUIとして設計する考え方を、悪い例と改善例で解説します。</description>
      <language>ja</language>
      <pubDate>Wed, 01 Jul 2026 00:00:00 GMT</pubDate>
      <guid>https://shuu11-dev.pages.dev/ja/articles/mcp-tool-description-ai-interface-design/</guid>
    </item>
    <item>
      <title>In a Static Next.js RSS Feed, Check XML Escaping First</title>
      <link>https://shuu11-dev.pages.dev/articles/nextjs-rss-xml-escaping-static-site/</link>
      <description>Why custom RSS feeds in static Next.js sites break when titles or descriptions are not XML-escaped, and how to verify feed output.</description>
      <language>en</language>
      <pubDate>Wed, 01 Jul 2026 00:00:00 GMT</pubDate>
      <guid>https://shuu11-dev.pages.dev/articles/nextjs-rss-xml-escaping-static-site/</guid>
    </item>
    <item>
      <title>Next.js静的サイトのRSSはXMLエスケープ漏れを先に疑う</title>
      <link>https://shuu11-dev.pages.dev/ja/articles/nextjs-rss-xml-escaping-static-site/</link>
      <description>Next.jsの静的サイトでRSSフィードを自前生成する時に、タイトルやdescriptionのXMLエスケープ漏れで壊れる理由と確認方法を解説します。</description>
      <language>ja</language>
      <pubDate>Wed, 01 Jul 2026 00:00:00 GMT</pubDate>
      <guid>https://shuu11-dev.pages.dev/ja/articles/nextjs-rss-xml-escaping-static-site/</guid>
    </item>
    <item>
      <title>npm install Skips devDependencies? Check NODE_ENV=production</title>
      <link>https://shuu11-dev.pages.dev/articles/npm-install-devdependencies-skipped-node-env-production/</link>
      <description>Why npm install or --save-dev can appear to succeed while devDependencies are missing, and how to recover with NODE_ENV checks and --include=dev.</description>
      <language>en</language>
      <pubDate>Wed, 01 Jul 2026 00:00:00 GMT</pubDate>
      <guid>https://shuu11-dev.pages.dev/articles/npm-install-devdependencies-skipped-node-env-production/</guid>
    </item>
    <item>
      <title>npm installでdevDependenciesが入らない時はNODE_ENV=productionを疑う</title>
      <link>https://shuu11-dev.pages.dev/ja/articles/npm-install-devdependencies-skipped-node-env-production/</link>
      <description>npm installや--save-devが成功表示なのにdevDependenciesが入らない時に、NODE_ENV=productionを確認して--include=devで復旧する手順です。</description>
      <language>ja</language>
      <pubDate>Wed, 01 Jul 2026 00:00:00 GMT</pubDate>
      <guid>https://shuu11-dev.pages.dev/ja/articles/npm-install-devdependencies-skipped-node-env-production/</guid>
    </item>
    <item>
      <title>PowerShell Where-Object Fails from Bash? It Is Usually Variable Expansion</title>
      <link>https://shuu11-dev.pages.dev/articles/powershell-bash-variable-expansion-where-object/</link>
      <description>Why PowerShell commands with Where-Object and $_ break when launched through Bash, and how to avoid cross-shell variable expansion bugs.</description>
      <language>en</language>
      <pubDate>Tue, 30 Jun 2026 00:00:00 GMT</pubDate>
      <guid>https://shuu11-dev.pages.dev/articles/powershell-bash-variable-expansion-where-object/</guid>
    </item>
    <item>
      <title>Bash経由のPowerShell Where-Objectが壊れる原因は変数展開</title>
      <link>https://shuu11-dev.pages.dev/ja/articles/powershell-bash-variable-expansion-where-object/</link>
      <description>BashやGit BashからPowerShellのWhere-Objectを呼ぶ時に、$_や$変数が先に展開されて壊れる原因と回避策を解説します。</description>
      <language>ja</language>
      <pubDate>Tue, 30 Jun 2026 00:00:00 GMT</pubDate>
      <guid>https://shuu11-dev.pages.dev/ja/articles/powershell-bash-variable-expansion-where-object/</guid>
    </item>
    <item>
      <title>VS Code Says Cannot Find setTimeout but tsc Passes: Add types node</title>
      <link>https://shuu11-dev.pages.dev/articles/typescript-vscode-cannot-find-settimeout-tsc-passes/</link>
      <description>Why VS Code TypeScript can report missing Node globals while tsc passes, and how explicit types: node fixes the language server.</description>
      <language>en</language>
      <pubDate>Mon, 29 Jun 2026 00:00:00 GMT</pubDate>
      <guid>https://shuu11-dev.pages.dev/articles/typescript-vscode-cannot-find-settimeout-tsc-passes/</guid>
    </item>
    <item>
      <title>tscは通るのにVS CodeだけsetTimeoutが見つからない時はtypes nodeを見る</title>
      <link>https://shuu11-dev.pages.dev/ja/articles/typescript-vscode-cannot-find-settimeout-tsc-passes/</link>
      <description>TypeScriptでtscは通るのにVS CodeだけNode.jsのグローバル型を見失う時に、types: [node]で直す理由を解説します。</description>
      <language>ja</language>
      <pubDate>Mon, 29 Jun 2026 00:00:00 GMT</pubDate>
      <guid>https://shuu11-dev.pages.dev/ja/articles/typescript-vscode-cannot-find-settimeout-tsc-passes/</guid>
    </item>
    <item>
      <title>Safe Path Containment on Windows in Node.js: Avoid startsWith Checks</title>
      <link>https://shuu11-dev.pages.dev/articles/windows-path-containment-validation-nodejs/</link>
      <description>How to validate that a user path stays inside a root directory on Windows without being fooled by drive-relative, UNC, case, or traversal paths.</description>
      <language>en</language>
      <pubDate>Sun, 28 Jun 2026 00:00:00 GMT</pubDate>
      <guid>https://shuu11-dev.pages.dev/articles/windows-path-containment-validation-nodejs/</guid>
    </item>
    <item>
      <title>Node.jsでWindowsパスの範囲チェックをstartsWithで書かない</title>
      <link>https://shuu11-dev.pages.dev/ja/articles/windows-path-containment-validation-nodejs/</link>
      <description>Windowsでユーザー指定パスがroot配下にあるかを、drive-relative、UNC、大小文字、.. traversalに騙されず検証する方法です。</description>
      <language>ja</language>
      <pubDate>Sun, 28 Jun 2026 00:00:00 GMT</pubDate>
      <guid>https://shuu11-dev.pages.dev/ja/articles/windows-path-containment-validation-nodejs/</guid>
    </item>
    <item>
      <title>Next.js localStorage Hydration: initializeWithValue false Is Not the Whole Fix</title>
      <link>https://shuu11-dev.pages.dev/articles/nextjs-localstorage-hydration-guard-usehooks-ts/</link>
      <description>How to avoid Next.js localStorage hydration bugs with usehooks-ts, typed defaults, dependency arrays, and a guard for effects derived from stored values.</description>
      <language>en</language>
      <pubDate>Sat, 27 Jun 2026 00:00:00 GMT</pubDate>
      <guid>https://shuu11-dev.pages.dev/articles/nextjs-localstorage-hydration-guard-usehooks-ts/</guid>
    </item>
    <item>
      <title>Next.jsのlocalStorage hydrationはinitializeWithValue falseだけでは足りない</title>
      <link>https://shuu11-dev.pages.dev/ja/articles/nextjs-localstorage-hydration-guard-usehooks-ts/</link>
      <description>Next.jsでusehooks-tsのuseLocalStorageを使う時に、hydration前のdefault値でeffectが走る問題とguardの入れ方を解説します。</description>
      <language>ja</language>
      <pubDate>Sat, 27 Jun 2026 00:00:00 GMT</pubDate>
      <guid>https://shuu11-dev.pages.dev/ja/articles/nextjs-localstorage-hydration-guard-usehooks-ts/</guid>
    </item>
    <item>
      <title>Writing Windows Paths to JSON from Git Bash? Avoid inline node -e and printf</title>
      <link>https://shuu11-dev.pages.dev/articles/git-bash-json-backslash-escaping-windows/</link>
      <description>Why Windows backslashes can turn into tabs when writing JSON through Git Bash inline commands, and why file-based scripts are safer.</description>
      <language>en</language>
      <pubDate>Fri, 26 Jun 2026 00:00:00 GMT</pubDate>
      <guid>https://shuu11-dev.pages.dev/articles/git-bash-json-backslash-escaping-windows/</guid>
    </item>
    <item>
      <title>Git BashでWindowsパス入りJSONを書く時はinline node -eとprintfを避ける</title>
      <link>https://shuu11-dev.pages.dev/ja/articles/git-bash-json-backslash-escaping-windows/</link>
      <description>Git BashでWindowsパス入りJSONを書く時に、バックスラッシュがタブ化する問題と、script fileに逃がす安全策を解説します。</description>
      <language>ja</language>
      <pubDate>Fri, 26 Jun 2026 00:00:00 GMT</pubDate>
      <guid>https://shuu11-dev.pages.dev/ja/articles/git-bash-json-backslash-escaping-windows/</guid>
    </item>
    <item>
      <title>Next.js routes-manifest.json Missing? Check for Parallel next build First</title>
      <link>https://shuu11-dev.pages.dev/articles/nextjs-routes-manifest-missing-parallel-build/</link>
      <description>A practical guide to diagnosing missing .next/routes-manifest.json errors caused by concurrent next build processes writing to the same .next directory.</description>
      <language>en</language>
      <pubDate>Thu, 25 Jun 2026 00:00:00 GMT</pubDate>
      <guid>https://shuu11-dev.pages.dev/articles/nextjs-routes-manifest-missing-parallel-build/</guid>
    </item>
    <item>
      <title>Next.jsでroutes-manifest.jsonが見つからない時は並列next buildを先に疑う</title>
      <link>https://shuu11-dev.pages.dev/ja/articles/nextjs-routes-manifest-missing-parallel-build/</link>
      <description>Next.jsの.next/routes-manifest.json欠落エラーが、設定ミスではなく同じ.nextへ並列next buildした競合で起きるケースを解説します。</description>
      <language>ja</language>
      <pubDate>Thu, 25 Jun 2026 00:00:00 GMT</pubDate>
      <guid>https://shuu11-dev.pages.dev/ja/articles/nextjs-routes-manifest-missing-parallel-build/</guid>
    </item>
    <item>
      <title>Node.js on OneDrive: Move node_modules with a Windows Junction</title>
      <link>https://shuu11-dev.pages.dev/articles/windows-onedrive-node-modules-junction/</link>
      <description>How to keep a Node.js project inside OneDrive while moving node_modules to an external folder with a Windows junction.</description>
      <language>en</language>
      <pubDate>Thu, 25 Jun 2026 00:00:00 GMT</pubDate>
      <guid>https://shuu11-dev.pages.dev/articles/windows-onedrive-node-modules-junction/</guid>
    </item>
    <item>
      <title>OneDrive上のNode.js開発はnode_modulesをjunctionで外へ逃がす</title>
      <link>https://shuu11-dev.pages.dev/ja/articles/windows-onedrive-node-modules-junction/</link>
      <description>WindowsのOneDrive配下でNode.js開発が壊れる時に、node_modulesを外部フォルダへ移してjunctionで戻す手順を解説します。</description>
      <language>ja</language>
      <pubDate>Thu, 25 Jun 2026 00:00:00 GMT</pubDate>
      <guid>https://shuu11-dev.pages.dev/ja/articles/windows-onedrive-node-modules-junction/</guid>
    </item>
    <item>
      <title>MCP stdio Server Logging: Keep Logs on stderr, Not stdout</title>
      <link>https://shuu11-dev.pages.dev/articles/mcp-stdio-server-logging-stderr/</link>
      <description>Why MCP stdio servers should avoid console.log, keep stdout clean for JSON-RPC, and send diagnostic logs to stderr instead.</description>
      <language>en</language>
      <pubDate>Wed, 24 Jun 2026 00:00:00 GMT</pubDate>
      <guid>https://shuu11-dev.pages.dev/articles/mcp-stdio-server-logging-stderr/</guid>
    </item>
    <item>
      <title>MCP stdioサーバーのログはstderrへ: stdoutを汚さない設計</title>
      <link>https://shuu11-dev.pages.dev/ja/articles/mcp-stdio-server-logging-stderr/</link>
      <description>MCP stdioサーバーでconsole.logを避け、ログをstderrへ出すべき理由を、stdoutがJSON-RPC通信路になる仕組みから解説します。</description>
      <language>ja</language>
      <pubDate>Wed, 24 Jun 2026 00:00:00 GMT</pubDate>
      <guid>https://shuu11-dev.pages.dev/ja/articles/mcp-stdio-server-logging-stderr/</guid>
    </item>
    <item>
      <title>Use PowerShell New-Item for node_modules Junctions on Windows</title>
      <link>https://shuu11-dev.pages.dev/articles/powershell-node-modules-junction-new-item/</link>
      <description>Why PowerShell New-Item -ItemType Junction is safer than mklink for node_modules junctions, especially in Unicode Windows paths.</description>
      <language>en</language>
      <pubDate>Wed, 24 Jun 2026 00:00:00 GMT</pubDate>
      <guid>https://shuu11-dev.pages.dev/articles/powershell-node-modules-junction-new-item/</guid>
    </item>
    <item>
      <title>node_modulesのjunctionはmklinkよりPowerShell New-Itemで作る</title>
      <link>https://shuu11-dev.pages.dev/ja/articles/powershell-node-modules-junction-new-item/</link>
      <description>Windowsでnode_modules junctionを作る時に、mklinkではなくPowerShellのNew-Item -ItemType Junctionを使う理由を解説します。</description>
      <language>ja</language>
      <pubDate>Wed, 24 Jun 2026 00:00:00 GMT</pubDate>
      <guid>https://shuu11-dev.pages.dev/ja/articles/powershell-node-modules-junction-new-item/</guid>
    </item>
    <item>
      <title>Designing an MCP Markdown Knowledge Server: Why It Should Not Return HTML</title>
      <link>https://shuu11-dev.pages.dev/articles/mcp-markdown-knowledge-server-design/</link>
      <description>How to design an MCP server for a Markdown knowledge base, why raw Markdown is better than HTML, and how to share one source across clients.</description>
      <language>en</language>
      <pubDate>Tue, 23 Jun 2026 00:00:00 GMT</pubDate>
      <guid>https://shuu11-dev.pages.dev/articles/mcp-markdown-knowledge-server-design/</guid>
    </item>
    <item>
      <title>MCPサーバーでMarkdown知識ベースを配信する設計: HTMLに変換しない理由</title>
      <link>https://shuu11-dev.pages.dev/ja/articles/mcp-markdown-knowledge-server-design/</link>
      <description>MCPサーバーでMarkdown知識ベースを扱うとき、HTMLへ変換せずraw Markdownを返す設計がなぜ保守しやすいかを解説します。</description>
      <language>ja</language>
      <pubDate>Tue, 23 Jun 2026 00:00:00 GMT</pubDate>
      <guid>https://shuu11-dev.pages.dev/ja/articles/mcp-markdown-knowledge-server-design/</guid>
    </item>
    <item>
      <title>Vite Build Crashed After Emit? Check Fresh Output Before Failing the Build</title>
      <link>https://shuu11-dev.pages.dev/articles/vite-node-build-post-emit-crash-check/</link>
      <description>How to distinguish a real Vite build failure from a Windows post-emit crash by cleaning dist and checking fresh generated files.</description>
      <language>en</language>
      <pubDate>Tue, 23 Jun 2026 00:00:00 GMT</pubDate>
      <guid>https://shuu11-dev.pages.dev/articles/vite-node-build-post-emit-crash-check/</guid>
    </item>
    <item>
      <title>Vite buildが成功表示後に落ちる時はdistの鮮度で判定する</title>
      <link>https://shuu11-dev.pages.dev/ja/articles/vite-node-build-post-emit-crash-check/</link>
      <description>WindowsでVite buildがemit後にクラッシュする時に、古いdistを成功扱いしないための鮮度チェック手順を解説します。</description>
      <language>ja</language>
      <pubDate>Tue, 23 Jun 2026 00:00:00 GMT</pubDate>
      <guid>https://shuu11-dev.pages.dev/ja/articles/vite-node-build-post-emit-crash-check/</guid>
    </item>
    <item>
      <title>Cloudflare Pages Git Integration or Direct Upload? Decide Before You Create the Project</title>
      <link>https://shuu11-dev.pages.dev/articles/cloudflare-pages-git-vs-direct-upload/</link>
      <description>How to choose between Cloudflare Pages Git integration and Wrangler Direct Upload before project creation, and why the choice affects deployment workflow.</description>
      <language>en</language>
      <pubDate>Mon, 22 Jun 2026 00:00:00 GMT</pubDate>
      <guid>https://shuu11-dev.pages.dev/articles/cloudflare-pages-git-vs-direct-upload/</guid>
    </item>
    <item>
      <title>Cloudflare PagesはGit連携かDirect Uploadかを作成前に決める</title>
      <link>https://shuu11-dev.pages.dev/ja/articles/cloudflare-pages-git-vs-direct-upload/</link>
      <description>Cloudflare PagesのGit連携とWrangler Direct Uploadの違い、production/previewの扱い、選び方を解説します。</description>
      <language>ja</language>
      <pubDate>Mon, 22 Jun 2026 00:00:00 GMT</pubDate>
      <guid>https://shuu11-dev.pages.dev/ja/articles/cloudflare-pages-git-vs-direct-upload/</guid>
    </item>
    <item>
      <title>Why only next dev breaks CSS: it was NODE_ENV=production</title>
      <link>https://shuu11-dev.pages.dev/articles/next-dev-css-parse-error-node-env-production/</link>
      <description>Why next build passes but next dev fails with a CSS parse error in Next.js, how to detect NODE_ENV pollution, and how to fix it for good.</description>
      <language>en</language>
      <pubDate>Mon, 22 Jun 2026 00:00:00 GMT</pubDate>
      <guid>https://shuu11-dev.pages.dev/articles/next-dev-css-parse-error-node-env-production/</guid>
    </item>
    <item>
      <title>next devだけCSSが壊れる原因はNODE_ENV=productionだった</title>
      <link>https://shuu11-dev.pages.dev/ja/articles/next-dev-css-parse-error-node-env-production/</link>
      <description>Next.jsでnext buildは通るのにnext devだけCSSパースエラーになる原因と、NODE_ENV汚染の調べ方・直し方を解説します。</description>
      <language>ja</language>
      <pubDate>Mon, 22 Jun 2026 00:00:00 GMT</pubDate>
      <guid>https://shuu11-dev.pages.dev/ja/articles/next-dev-css-parse-error-node-env-production/</guid>
    </item>
    <item>
      <title>Claude Code MCP Server Not Loading? Check Config Scope, Restart, and Tool Names</title>
      <link>https://shuu11-dev.pages.dev/articles/claude-code-mcp-config-not-loading/</link>
      <description>A focused checklist for Claude Code MCP servers that do not appear or do not respond after editing configuration.</description>
      <language>en</language>
      <pubDate>Sun, 21 Jun 2026 00:00:00 GMT</pubDate>
      <guid>https://shuu11-dev.pages.dev/articles/claude-code-mcp-config-not-loading/</guid>
    </item>
    <item>
      <title>Claude CodeでMCPサーバーが出ない時に見る設定・再起動・ツール名</title>
      <link>https://shuu11-dev.pages.dev/ja/articles/claude-code-mcp-config-not-loading/</link>
      <description>Claude CodeでMCPサーバーを設定したのに出ない時に、設定場所、絶対パス、再起動、mcp__ツール名を確認する手順です。</description>
      <language>ja</language>
      <pubDate>Sun, 21 Jun 2026 00:00:00 GMT</pubDate>
      <guid>https://shuu11-dev.pages.dev/ja/articles/claude-code-mcp-config-not-loading/</guid>
    </item>
    <item>
      <title>5 Pitfalls of Next.js output: export and How to Avoid Them</title>
      <link>https://shuu11-dev.pages.dev/articles/nextjs-static-export-pitfalls/</link>
      <description>Five common gotchas when exporting a Next.js 15 app with output: export — force-static metadata routes, no next/og, trailingSlash, and next/image — with fixes.</description>
      <language>en</language>
      <pubDate>Sun, 21 Jun 2026 00:00:00 GMT</pubDate>
      <guid>https://shuu11-dev.pages.dev/articles/nextjs-static-export-pitfalls/</guid>
    </item>
    <item>
      <title>Next.jsのoutput: exportで詰まる5つの罠と回避策</title>
      <link>https://shuu11-dev.pages.dev/ja/articles/nextjs-static-export-pitfalls/</link>
      <description>Next.js 15をoutput: exportで静的書き出しする際にハマるforce-static必須・next/og非対応・trailingSlash・next/imageなど5つの罠と回避策を実例で解説します。</description>
      <language>ja</language>
      <pubDate>Sun, 21 Jun 2026 00:00:00 GMT</pubDate>
      <guid>https://shuu11-dev.pages.dev/ja/articles/nextjs-static-export-pitfalls/</guid>
    </item>
    <item>
      <title>Type-Safe Tauri v2 IPC: Keep Rust and TypeScript Contracts from Drifting</title>
      <link>https://shuu11-dev.pages.dev/articles/tauri-v2-ipc-type-bridging/</link>
      <description>How to prevent silent Tauri v2 IPC bugs by making Rust serde names, TypeScript interfaces, optional values, and verification steps explicit.</description>
      <language>en</language>
      <pubDate>Sat, 20 Jun 2026 00:00:00 GMT</pubDate>
      <guid>https://shuu11-dev.pages.dev/articles/tauri-v2-ipc-type-bridging/</guid>
    </item>
    <item>
      <title>Prevent Double-Click Races in Tauri Apps with Optimistic UI Guards</title>
      <link>https://shuu11-dev.pages.dev/articles/tauri-optimistic-ui-race-prevention/</link>
      <description>A practical pattern for Tauri React apps: set UI state before async IPC, split cleanup from action errors, and show recoverable failures clearly.</description>
      <language>en</language>
      <pubDate>Fri, 19 Jun 2026 00:00:00 GMT</pubDate>
      <guid>https://shuu11-dev.pages.dev/articles/tauri-optimistic-ui-race-prevention/</guid>
    </item>
    <item>
      <title>Using tauri-plugin-sql v2? Use sqlx for Rust Command-Side Queries</title>
      <link>https://shuu11-dev.pages.dev/articles/tauri-plugin-sql-rust-sqlx-pattern/</link>
      <description>How to choose between tauri-plugin-sql&apos;s JavaScript API and sqlx in Rust commands when building Tauri v2 apps with SQLite.</description>
      <language>en</language>
      <pubDate>Thu, 18 Jun 2026 00:00:00 GMT</pubDate>
      <guid>https://shuu11-dev.pages.dev/articles/tauri-plugin-sql-rust-sqlx-pattern/</guid>
    </item>
    <item>
      <title>Vite Env Variables Not Updating? Restart Dev Server and Check the Cache</title>
      <link>https://shuu11-dev.pages.dev/articles/vite-env-cache-patterns/</link>
      <description>How to debug Vite env variables that appear stale, why .env changes require restart, and when to clear Vite&apos;s module cache.</description>
      <language>en</language>
      <pubDate>Wed, 17 Jun 2026 00:00:00 GMT</pubDate>
      <guid>https://shuu11-dev.pages.dev/articles/vite-env-cache-patterns/</guid>
    </item>
    <item>
      <title>React IME Input Bugs: Guard Key Handlers During Composition</title>
      <link>https://shuu11-dev.pages.dev/articles/react-ime-composition-guard/</link>
      <description>How to stop Enter, arrow keys, and dropdown shortcuts from firing too early while Japanese IME composition is still active in React.</description>
      <language>en</language>
      <pubDate>Tue, 16 Jun 2026 00:00:00 GMT</pubDate>
      <guid>https://shuu11-dev.pages.dev/articles/react-ime-composition-guard/</guid>
    </item>
    <item>
      <title>CSS Layout Measurement Gotchas: zoom, transform, min-width, and Inline Styles</title>
      <link>https://shuu11-dev.pages.dev/articles/css-layout-measurement-gotchas/</link>
      <description>How to debug browser layout bugs caused by CSS zoom, transform, getBoundingClientRect, min-width:auto, and inline style overrides.</description>
      <language>en</language>
      <pubDate>Mon, 15 Jun 2026 00:00:00 GMT</pubDate>
      <guid>https://shuu11-dev.pages.dev/articles/css-layout-measurement-gotchas/</guid>
    </item>
    <item>
      <title>SVG foreignObject Can Taint Canvas and Break WebGL Textures</title>
      <link>https://shuu11-dev.pages.dev/articles/webgl-canvas-foreignobject-taint/</link>
      <description>Why SVG foreignObject rasterization can taint a canvas in Chromium, how to detect it, and why Canvas 2D rendering is safer for WebGL textures.</description>
      <language>en</language>
      <pubDate>Sun, 14 Jun 2026 00:00:00 GMT</pubDate>
      <guid>https://shuu11-dev.pages.dev/articles/webgl-canvas-foreignobject-taint/</guid>
    </item>
    <item>
      <title>Rust from_utf8_lossy Can Break Byte Offsets in Stream Readers</title>
      <link>https://shuu11-dev.pages.dev/articles/rust-lossy-utf8-byte-offset/</link>
      <description>Why Rust stream readers should find byte offsets on raw bytes before using from_utf8_lossy, especially for log tailing and partial UTF-8 chunks.</description>
      <language>en</language>
      <pubDate>Sat, 13 Jun 2026 00:00:00 GMT</pubDate>
      <guid>https://shuu11-dev.pages.dev/articles/rust-lossy-utf8-byte-offset/</guid>
    </item>
    <item>
      <title>Rust notify on Windows: Do Not Drain Forever Inside the Watcher Callback</title>
      <link>https://shuu11-dev.pages.dev/articles/notify-windows-callback-thread/</link>
      <description>How to keep Rust notify watchers responsive on Windows by doing bounded work in callbacks and moving heavy parsing out of the event path.</description>
      <language>en</language>
      <pubDate>Fri, 12 Jun 2026 00:00:00 GMT</pubDate>
      <guid>https://shuu11-dev.pages.dev/articles/notify-windows-callback-thread/</guid>
    </item>
    <item>
      <title>WebView2 Memory Looks High? Compare Task Manager with a V8 Heap Snapshot</title>
      <link>https://shuu11-dev.pages.dev/articles/webview2-v8-memory-diagnosis/</link>
      <description>How to avoid false memory-leak diagnoses in WebView2 apps by comparing Task Manager RSS, V8 heap snapshots, and high-frequency state updates.</description>
      <language>en</language>
      <pubDate>Thu, 11 Jun 2026 00:00:00 GMT</pubDate>
      <guid>https://shuu11-dev.pages.dev/articles/webview2-v8-memory-diagnosis/</guid>
    </item>
    <item>
      <title>Testing Tauri Zustand Stores with Vitest: Mock IPC and Reset Singletons</title>
      <link>https://shuu11-dev.pages.dev/articles/vitest-tauri-zustand-store-testing/</link>
      <description>How to test Tauri-backed Zustand stores in Vitest with jsdom, __TAURI_INTERNALS__ mocks, module reset, fake timers, and parity tests.</description>
      <language>en</language>
      <pubDate>Wed, 10 Jun 2026 00:00:00 GMT</pubDate>
      <guid>https://shuu11-dev.pages.dev/articles/vitest-tauri-zustand-store-testing/</guid>
    </item>
    <item>
      <title>crypto.randomUUID Fails on LAN HTTP: Use a getRandomValues Fallback</title>
      <link>https://shuu11-dev.pages.dev/articles/web-crypto-randomuuid-secure-context/</link>
      <description>Why crypto.randomUUID works on localhost but can fail on LAN HTTP, and how to generate browser UUIDs with a secure getRandomValues fallback.</description>
      <language>en</language>
      <pubDate>Tue, 09 Jun 2026 00:00:00 GMT</pubDate>
      <guid>https://shuu11-dev.pages.dev/articles/web-crypto-randomuuid-secure-context/</guid>
    </item>
    <item>
      <title>When an API Is Frozen, Mock the Transport Layer Instead</title>
      <link>https://shuu11-dev.pages.dev/articles/frozen-api-transport-layer-fallback/</link>
      <description>A testing pattern for runtimes that freeze high-level APIs: confirm descriptors, find the underlying transport, and intercept fetch or messages instead.</description>
      <language>en</language>
      <pubDate>Mon, 08 Jun 2026 00:00:00 GMT</pubDate>
      <guid>https://shuu11-dev.pages.dev/articles/frozen-api-transport-layer-fallback/</guid>
    </item>
  </channel>
</rss>