Skip to content

L33Z22L11/blog-v3

Repository files navigation

纸鹿摸鱼处

框架 CMS 部署平台 访问统计 代码风格 代码风格

我的第三代个人博客,于 2024 年 8 月 11 日上线。

使用本主题的博客

特性

主题特性 · 组件示例

目录结构

项目使用 Nuxt 4 项目目录结构,可以参照 Nuxt 3 目录结构(左侧栏有导航)

.
├── app # 前端
│   ├── assets # 资源文件
│   ├── components # 组件
│   │   ├── content # MDC组件
│   │   ├── partial # 微型组件
│   │   ├── widget # 侧边栏组件
│   │   ├── zhilu # 个人标识组件
│   │   └── ... # 布局组件
│   ├── composables # Vue 组合式函数
│   ├── pages # 页面
│   │   ├── [...slug].vue # 正文、404页面
│   │   ├── page.vue # 首页
│   │   ├── page/[[id]].vue # 首页动态路由
│   │   ├── archive.vue # 归档
│   │   ├── link.vue # 友链
│   │   └── preview.vue # 预览的文章
│   ├── plugins # Nuxt / Vue 插件
│   ├── stores # Pinia 状态管理
│   ├── types # 类型定义
│   ├── utils # 工具函数
│   ├── app.config.ts # 前端响应式配置
│   ├── app.vue # 基本布局
│   └── error.vue # 意外错误页
├── content # 文章
│   ├── posts # 文章
│   ├── previews # 预览文章,可被站内搜索
│   ├── link.md # 友链要求
│   └── theme.md # 主题介绍
├── patches # npm 包补丁
├── public # 静态资源,生成在站点根目录
│   └── fonts # 字体
├── server # 服务端
│   ├── api # 接口
│   │   └── stats.get.ts # 博客静态统计
│   ├── plugins # Nitro 插件
│   │   ├── anti-mirror.ts # 恶意反代跳转
│   │   └── fix-post.ts # 修复文章时区/链接
│   └── routes # 路由
│       └── atom.xml.get.ts # Atom 订阅源
├── blog.config.ts # 博客静态公共配置
├── headers.ts # 静态路径响应头配置
├── nuxt.config.ts # Nuxt 配置
└── redirects.ts # 旧站点重定向配置

快速开始

安装依赖

pnpm i

运行开发环境

pnpm dev

删除原有文章

content/ 目录下仅保留 link.md,在 app.config.ts 中将 footer.nav[2].items[1].url/theme 改为 https://blog.zhilu.cyou/theme 即可。

创建文章

pnpm new my-post-title

构建生产环境

pnpm generate
pnpm preview

部署指南

推荐使用 Vercel 进行部署,同时也支持 Netlify、Cloudflare Pages 等平台。建议采用静态(SSG)部署方式,也可直接使用“Nuxt 预设”部署。我的部署配置如下:

  • 构建命令: pnpm generate
  • 输出目录: dist
  • 安装命令: pnpm i

贡献

欢迎参与项目:如果有具体问题或功能建议,可以发起 Issue;如果愿意在已确定的方向上增加功能或修复问题,可以提交 Pull Request。

使用答疑

使用需要具备一定的前端项目基础。如果你不确定代码是否有问题,可以加入 QQ 群 169994096 讨论(也欢迎闲聊),我很乐意在空闲时解答问题。

许可证

  • 项目本体:MIT
  • 博客文章:CC BY-NC-SA 4.0
  • 不得以“纸鹿”或我的相关名义发布网站。
  • 希望你在页脚保留此项目链接,助力开源传播。