跳转到内容
水月洞天
返回

AstroPages-Bilingual现代、高性能双语博客模版

编辑页面

一个基于 Astro v5Keystatic CMSCloudflare Pages 构建的现代、高性能双语博客模版。

专为追求“混合(Hybrid)”体验的工程师和内容创作者设计:面向访客使用 SSG (静态站点生成) 以获得极致性能,同时提供 Headless CMS 带来无需维护数据库的优秀写作体验。

本项目基于 astro-paper 主题,并针对原生 i18n 和工程健壮性进行了重构。

✨ 特性

🛠️ 快速开始

1. 环境要求

2. 安装

克隆此仓库并安装依赖:

git clone https://github.com/t0saki/AstroPages-Bilingual.git
cd AstroPages-Bilingual
npm install

3. 本地开发

启动开发服务器:

npm run dev

☁️ 部署

部署到Cloudflare Pages

  1. Fork 这个仓库。
  2. 登录 Cloudflare Dashboard > Workers 和 Pages > 创建应用程序 > 下面小字Pages Get Started > Connect to Git。
  3. 选择你的仓库。
  4. 构建设置 (Build Settings)
  1. 点击 Save and Deploy
  2. 注意:部署完成后,建议在 Cloudflare Dashboard 的 Speed > Optimization关闭 Rocket Loader。Rocket Loader 会干扰 Astro 的客户端路由(View Transitions),导致页面导航和脚本执行异常。

配置生产环境 CMS (GitHub 模式)

要在线上站点 (/keystatic) 编辑内容,需要将 Keystatic 连接到 GitHub。如果您希望直接通过 GitHub 管理内容而不是通过单独的 Keystatic 管理端,可以跳过此步骤,网站应该已经可用了。

  1. 创建 GitHub App

有几个文件要修改:
① keystatic.config.ts第10行,修改仓库地址,注意用户名和仓库地址都要改

3de5e1514e7b6c8f568ae6ebe3f3e3713b8eae57_2_690x364.png
② utils/config.ts 中修改为自己的域名和仓库地址

23e5bb74b345d429731202dbe83cb924ce3b6695_2_690x378.png

  1. 在 Cloudflare 设置环境变量

📂 项目结构

/
├── src/
│   ├── data/
│   │   └── blog/
│   │       ├── zh/         # 中文文章
│   │       └── en/         # 英文文章
│   ├── pages/
│   │   └── [lang]/         # i18n 动态路由
│   │       ├── index.astro
│   │       └── posts/...
│   └── components/         # 通用 UI 组件
├── keystatic.config.ts     # CMS 配置
├── astro.config.mjs        # Astro & i18n 配置
└── public/                 # 静态资源

📝 撰写内容

你可以通过两种方式撰写内容:

  1. 通过 Keystatic UI:访问 /keystatic,使用 GitHub 登录并使用可视化编辑器。
  2. 直接创建文件:在 src/data/blog/zhsrc/data/blog/en 中直接创建 Markdown/MDX 文件。

📜 许可证

MIT Licensed.


编辑页面
分享到:

下一篇
# Midjourney 提示词生成器