<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>merlinalex.me</title><description>二次元可爱风个人站 (完整内容)</description><link>https://merlinalex.me/</link><language>zh-CN</language><item><title>欢迎来到次元入口</title><link>https://merlinalex.me/articles/welcome/</link><guid isPermaLink="true">https://merlinalex.me/articles/welcome/</guid><description>站点第一篇文章，介绍这个二次元个人站的功能与技术栈</description><pubDate>Mon, 01 Jun 2026 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;这是一篇用来验证文章详情页功能的示例文章。如果你能看到这篇文章，说明站点的内容系统已经正常运行了。&lt;/p&gt;
&lt;h2&gt;关于这个站点&lt;/h2&gt;
&lt;p&gt;这是一个以 &lt;strong&gt;二次元可爱风&lt;/strong&gt; 为核心的个人站点，使用 Astro + Tailwind CSS 构建。站点的设计理念是打造一个沉浸式的二次元空间，让访客感受到独特的氛围。&lt;/p&gt;
&lt;p&gt;站点的主要功能包括：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;文章系统：支持标签筛选、目录导航、代码高亮&lt;/li&gt;
&lt;li&gt;作品展示：开源项目与创意作品分区展示&lt;/li&gt;
&lt;li&gt;社区功能：友链、时间线、番剧追踪&lt;/li&gt;
&lt;li&gt;氛围系统：Live2D 看板娘、花瓣飘落、BGM 播放器&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;技术栈选择&lt;/h3&gt;
&lt;p&gt;选择 Astro 作为静态站点生成器，主要因为它的 Content Collections 提供了类型安全的内容管理，以及 Islands Architecture 能够按需加载交互组件。&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;// 文章内容集合的 Zod schema 定义
const articles = defineCollection({
  loader: glob({ base: &apos;./src/content/articles&apos;, pattern: &apos;**/*.{md,mdx}&apos; }),
  schema: z.object({
    title: z.string(),
    publishedAt: z.coerce.date(),
    tags: z.array(z.string()).default([]),
    draft: z.boolean().default(false),
    toc: z.boolean().default(true),
  }),
});
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;上面的代码展示了文章集合的 schema 定义，使用 Zod 进行运行时类型验证。&lt;/p&gt;
&lt;h2&gt;文章详情页功能&lt;/h2&gt;
&lt;p&gt;文章详情页是站点的核心阅读体验，集成了多个交互组件。&lt;/p&gt;
&lt;h3&gt;目录导航&lt;/h3&gt;
&lt;p&gt;桌面端会显示一个固定在侧边的目录栏，通过 IntersectionObserver 实现滚动高亮。移动端则显示为一个可折叠的手风琴组件，节省屏幕空间。&lt;/p&gt;
&lt;h3&gt;代码块增强&lt;/h3&gt;
&lt;p&gt;所有代码块都支持语法高亮（由 Shiki 提供）和一键复制功能。复制按钮默认隐藏，鼠标悬停时显示，点击后会显示&quot;已复制!&quot;的反馈。&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;// 一键复制功能示例
async function copyCode(text) {
  await navigator.clipboard.writeText(text);
  showFeedback(&apos;已复制!&apos;);
  setTimeout(() =&amp;gt; hideFeedback(), 2000);
}
&lt;/code&gt;&lt;/pre&gt;
&lt;h3&gt;图片灯箱&lt;/h3&gt;
&lt;p&gt;文章中的图片支持点击放大查看，使用 medium-zoom 库实现。按 Escape 键可以关闭放大的图片。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://merlinalex.me/images/welcome-hero.png&quot; alt=&quot;示例图片：站点架构图&quot; /&gt;&lt;/p&gt;
&lt;p&gt;上图展示了站点的整体架构，从内容管理到部署上线的完整流程。&lt;/p&gt;
&lt;h2&gt;开发计划&lt;/h2&gt;
&lt;p&gt;站点的开发分为多个阶段：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;基础框架&lt;/strong&gt;：Astro + Tailwind 脚手架、内容集合、基础布局&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;核心内容&lt;/strong&gt;：文章系统、RSS 订阅、评论系统&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;作品展示&lt;/strong&gt;：开源项目、创意作品、友链系统&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;社区互动&lt;/strong&gt;：搜索、番剧追踪、书影音清单&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;氛围系统&lt;/strong&gt;：Live2D、花瓣特效、BGM 播放器&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;优化打磨&lt;/strong&gt;：性能优化、测试覆盖、SEO 增强&lt;/li&gt;
&lt;/ol&gt;
&lt;h3&gt;当前进度&lt;/h3&gt;
&lt;p&gt;目前正处于第二阶段，正在构建文章系统的完整功能。这一阶段完成后，站点将具备完整的文章阅读体验。&lt;/p&gt;
&lt;h2&gt;写在最后&lt;/h2&gt;
&lt;p&gt;感谢你访问这个站点。如果你对站点有任何建议或想法，欢迎在文章下方留言交流。&lt;/p&gt;
&lt;p&gt;这个站点会持续更新，记录技术学习和二次元生活的点点滴滴。希望这里能成为一个温暖的小角落，给每一位访客带来愉快的体验。&lt;/p&gt;
</content:encoded><category>notes</category><author>merlinalex</author></item></channel></rss>