前端开发

用 Astro 搭建印象派风格博客

记录使用 Astro 框架搭建个人博客的过程,从项目结构设计到印象派风格 UI 的实现。

为什么选择 Astro?

Astro 是一个以内容为中心的静态站点生成器,天然适合博客场景。它支持多种 UI 框架,拥有出色的性能表现,并且提供了强大的内容集合功能。

核心优势

  • 零 JavaScript 默认发送 — 只在需要时加载 JS
  • 内容集合 — 类型安全的 Markdown/MDX 管理
  • 组件岛屿 — 按需水合,性能出色
  • 框架无关 — 可以混合使用 React、Vue、Svelte 等

项目结构设计

一个好的项目结构应该具备以下特点:

  1. 清晰的职责划分 — 每个目录都有明确的功能
  2. 可扩展性 — 新增功能无需重构现有结构
  3. 组件化 — UI 元素高度可复用
  4. 类型安全 — TypeScript 全覆盖
// 示例:内容集合定义
import { defineCollection, z } from 'astro:content';

const blog = defineCollection({
  type: 'content',
  schema: z.object({
    title: z.string(),
    description: z.string(),
    date: z.coerce.date(),
    tags: z.array(z.string()).default([]),
  }),
});

印象派风格设计

印象派画作的核心特征:

  • 捕捉光线与色彩的瞬间变化
  • 柔和的色调过渡
  • 温暖而朦胧的氛围

将这些理念融入 UI 设计中,我们使用了柔和的薰衣草紫、玫瑰粉和鼠尾草绿作为主色调,搭配温暖的画布色背景。

“艺术是将可见之物变为可感之物。” —— 保罗·克利

下一步

  • 添加搜索功能
  • 实现暗色主题
  • 集成评论系统
  • 优化 SEO 表现