<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>Alex&apos;s Journey · HD-2D Personal Site</title><description>A pixel-art HD-2D personal website inspired by Octopath Traveler.</description><link>https://f7fe748e.hd2d-personal-site.pages.dev/</link><item><title>Building HD-2D Effects with CSS</title><link>https://f7fe748e.hd2d-personal-site.pages.dev/blog/hd2d-css/</link><guid isPermaLink="true">https://f7fe748e.hd2d-personal-site.pages.dev/blog/hd2d-css/</guid><description>Recreate Octopath Traveler&apos;s tilt-shift magic in the browser.</description><pubDate>Wed, 03 Jun 2026 00:00:00 GMT</pubDate><category>css</category><category>hd2d</category><category>effects</category></item><item><title>TypeScript Generics: The Final Boss</title><link>https://f7fe748e.hd2d-personal-site.pages.dev/blog/ts-generics/</link><guid isPermaLink="true">https://f7fe748e.hd2d-personal-site.pages.dev/blog/ts-generics/</guid><description>Defeating mapped types and conditional types once and for all.</description><pubDate>Thu, 21 May 2026 00:00:00 GMT</pubDate><category>typescript</category><category>generics</category><category>types</category></item><item><title>Astro 5 vs Next.js 16: Which Inn to Stay?</title><link>https://f7fe748e.hd2d-personal-site.pages.dev/blog/astro-vs-next/</link><guid isPermaLink="true">https://f7fe748e.hd2d-personal-site.pages.dev/blog/astro-vs-next/</guid><description>A traveler&apos;s review of two static-site kingdoms.</description><pubDate>Wed, 15 Apr 2026 00:00:00 GMT</pubDate><category>astro</category><category>nextjs</category><category>frameworks</category></item><item><title>Why I Code at Night</title><link>https://f7fe748e.hd2d-personal-site.pages.dev/blog/why-code-at-night/</link><guid isPermaLink="true">https://f7fe748e.hd2d-personal-site.pages.dev/blog/why-code-at-night/</guid><description>On focus, fireflies, and the romance of empty terminals.</description><pubDate>Mon, 02 Mar 2026 00:00:00 GMT</pubDate><category>musings</category><category>productivity</category></item></channel></rss>