Skip to content

About

this is my blog

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

14 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Joe-Mu-Yu 个人博客

GitHub stars GitHub forks GitHub license Astro

🌐 在线访问: https://joe-mu-yu.github.io

一个基于 Astro 构建的现代化个人博客,采用苹果液态玻璃 (Apple Liquid Glass) 设计风格,支持中英双语和明暗主题切换。

✨ 特性

  • 🎨 现代设计 - 苹果液态玻璃风格 (iOS 26 / visionOS / macOS 16)
  • 🌗 主题切换 - 支持亮色/暗色模式,自动跟随系统偏好
  • 🌍 多语言支持 - 中英文国际化,可实时切换
  • 📱 响应式布局 - 完美适配移动端、平板和桌面端
  • 🚀 性能优化 - Astro 静态站点生成,极速加载
  • 🔍 SEO 友好 - 内置 sitemap,搜索引擎优化
  • 📝 Markdown 支持 - 使用 MDX 编写技术文章
  • 🎯 GitHub 集成 - 自动同步 GitHub 仓库到项目页面
  • ♿ 无障碍访问 - 符合 WAI-ARIA 标准
  • 💎 液态玻璃 - 8% 透明度 + blur(40px) saturate(180%) + 三层阴影

🛠️ 技术栈

  • 框架: Astro 5.0
  • 语言: TypeScript
  • 样式: CSS Variables + Apple Liquid Glass (backdrop-filter + 多层阴影)
  • 部署: GitHub Pages
  • 内容: MDX (Markdown + JSX)

🚀 快速开始

前置要求

  • Node.js 18+
  • npm 或 pnpm

本地开发

# 克隆项目
git clone https://github.com/Joe-Mu-Yu/Joe-Mu-Yu.github.io.git

# 进入项目目录
cd Joe-Mu-Yu.github.io

# 安装依赖
npm install

# 启动开发服务器
npm run dev

访问 http://localhost:4321/ 查看效果

构建部署

# 构建静态站点
npm run build

# 预览构建结果
npm run preview

📁 项目结构

Joe-Mu-Yu.github.io/
├── src/
│   ├── components/          # Astro 组件
│   │   ├── ArticleCard.astro    # 文章卡片
│   │   ├── ProjectCard.astro    # 项目卡片
│   │   ├── Button.astro         # 按钮组件
│   │   ├── Header.astro         # 导航栏
│   │   ├── Footer.astro         # 页脚
│   │   ├── ThemeToggle.astro    # 主题切换
│   │   └── LanguageToggle.astro # 语言切换
│   ├── layouts/             # 布局组件
│   │   └── BaseLayout.astro     # 基础布局
│   ├── pages/               # 页面
│   │   ├── index.astro          # 首页
│   │   ├── posts.astro          # 文章列表
│   │   ├── projects.astro       # 项目展示
│   │   ├── life.astro           # 生活
│   │   ├── about.astro          # 关于
│   │   └── posts/               # 博客文章目录
│   ├── styles/              # 全局样式
│   │   └── global.css           # CSS 变量和基础样式
│   └── i18n/                # 国际化
│       └── index.ts             # 翻译配置
├── public/                  # 静态资源
├── astro.config.mjs         # Astro 配置
└── package.json             # 项目依赖

📝 内容创作

创建新文章

在 src/pages/posts/ 目录下创建 .md 文件:

---
title: '文章标题'
description: '文章描述'
date: 2025-01-01
tags: ['标签 1', '标签 2']
---

# 文章内容

开始写作...

配置国际化

在 src/i18n/index.ts 中添加翻译:

export const translations = {
  zh: {
    nav: {
      home: '首页',
      posts: '文章',
      projects: '项目'
    }
  },
  en: {
    nav: {
      home: 'Home',
      posts: 'Posts',
      projects: 'Projects'
    }
  }
};

🎨 自定义配置

修改主题颜色

编辑 src/styles/global.css:

:root {
  --color-primary: #1a73e8;      /* 主色调 */
  --color-bg: #ffffff;           /* 背景色 */
  --color-text: #1a1a1a;         /* 文字颜色 */
}

添加项目展示

项目页面会自动从 GitHub API 获取您的仓库,也可以手动添加:

const manualProjects = [
  {
    title: '项目名称',
    description: '项目描述',
    href: 'https://github.com/your-username/repo',
    icon: '🚀',
    language: 'TypeScript',
    stars: 0,
    forks: 0
  }
];

📊 GitHub 项目集成

项目页面会自动同步您的 GitHub 仓库:

  • ✅ 自动获取仓库信息(名称、描述、语言、Stars、Forks)
  • ✅ 过滤 Fork 项目,仅显示原创
  • ✅ 智能匹配项目图标
  • ✅ 显示最后更新时间

🌟 设计亮点

🍎 苹果液态玻璃风格 (Apple Liquid Glass)

  • 液态玻璃组件: 使用 backdrop-filter: blur(40px) saturate(180%) 创建真实液态玻璃效果
  • 透明层次: 8% / 4% / 12% 三种动态透明度层级
  • 三层阴影: 外层 + 中层 + 内发光,营造立体悬浮感
  • 边缘光效果: 20% 透明度边框模拟光线折射
  • 液态光泽层: 135 度渐变光泽,模拟光线流动
  • 渐变背景: 多层径向渐变光晕,增加视觉深度
  • 大圆角设计: 36px 超大圆角,现代柔和
  • 性能优化: 硬件加速 + 移动端降级 + 减少动画偏好支持

📚 设计文档:

交互体验

  • 流畅动画: cubic-bezier(0.4, 0, 0.2, 1) 缓动函数
  • 悬停反馈: 卡片上浮、阴影加深、边框变化
  • 主题切换: 平滑过渡,无闪烁
  • 响应式设计: 移动端优化,触摸友好

🔧 开发命令

# 开发模式
npm run dev

# 构建生产版本
npm run build

# 预览构建结果
npm run preview

# Astro CLI
npm run astro add [package]

📄 许可证

MIT License

👤 关于作者

Morgan

🤝 贡献

欢迎提交 Issue 和 Pull Request!

📮 联系方式

🙏 致谢


Made with ❤️ by Morgan | Powered by Astro

About

this is my blog

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages