一个基于 Astro 的静态博客;
打算仿一个 gridea 主题作为练习:「getgridea/gridea-theme-simple: 一个漂亮的 Gridea 主题 Simple」;
wdssmq/blog-astro: https://github.com/wdssmq/blog-astro
1、使用上面的仓库作为模板,创建一个新的仓库;
2、克隆到本地;
3、安装依赖及运行,推荐使用 pnpm;
pnpm install
# 调试开发
npm run dev
# 构建
npm run build
4、各种说明:
- 这东西虽然可以当博客,但并没有一般博客意义上的「主题」规范,姑且仍然尝试将文件放到了
src/theme-simple
目录下,src/pages
则因为 Astro 的限制,只能放外边; src/theme-simple/config.ts
用于预置和合并配置,自定义则在src/consts.ts
中;- 文章内容路径为
src/content
,可以符号链接或快捷方式到其他地方方便管理; - 内置了一个「关于」页面,路径
src/content/pages/about.md
,应该是不能删除,其他文件名也并不会被解析为新页面; - 「文章」存放于
src/content/blog
路径内,可自行清空后新建;
5、评论设置:
- 参考文档部署 Waline 评论系统: https://waline.js.org/;
- 在
src/consts.ts
中配置waline
字段:
waline: {
enable: true, // 启用评论
serverURL: "https://your-domain.vercel.app", // 修改为你的评论服务器地址
},
6、更新:
- 克隆或下载 wdssmq/blog-astro 仓库;
- 使用 Beyond Compare 或其他工具比较差异;
- 按如下说明覆盖文件:
src/content/config.ts
;「2023-08-26:此文件内配置将从src/theme-simple/config.ts
引入」src/theme-simple
内所有文件;「2023-08-26:原有的自定义配置复制到新版src/consts.ts
内」src/pages
内的所有文件;package.json
;
- 额外对比
public
astro.config.mjs
src/consts.ts
内容; - 重新安装依赖然后调试运行;
推荐:tip. 额外的使用或更新说明 · Issue #4 · wdssmq/blog-astro;「提供了 Beyond Compare 的排除规则」
入门指南 🚀 Astro 文档:
https://docs.astro.build/zh-cn/getting-started/
astro/examples/blog at latest · withastro/astro · GitHub:
https://github.com/withastro/astro/tree/latest/examples/blog?on=github#astro-starter-kit-blog
爱发电:https://afdian.com/a/wdssmq
哔哩哔哩:https://space.bilibili.com/44744006/video「投币或充电」「大会员卡券领取 - bilibili」
RSS 订阅:https://feed.wdssmq.com/ 「「言说」RSS 是一种态度!!」