返回笔记

把Github当作数据库,搭建博客 · Issue #54 · zhangyu1818/blog

AI 摘要 · Qwen 中文摘要 收录
查看原文

该文档介绍了一种以 GitHub Issues 为数据源,结合 GitHub API、Gitalk、图片分支和 Vercel 部署来搭建博客的方法。

方案概述

  • 文章介绍用 GitHub Issues 作为博客数据源,无需服务器即可搭建博客。
  • 前端可采用任意技术栈,并支持评论、标签分类、图片存储、CDN 加速和自定义域名。

数据读取

  • 每篇文章对应一个 GitHub Issue,Issue 评论可作为文章评论。
  • 可通过 GitHub REST API 或 GraphQL API 读取 Issues 列表和详情,作者示例使用 GraphQL API。
  • 详情接口可获取 bodyHTML,减少本地 Markdown 渲染工作。

评论系统

  • 推荐使用 Gitalk 实现评论功能。
  • 需要创建 GitHub 应用,并配置 clientID、clientSecret、repo、owner、admin 和 number 等参数。

图片与 CDN

  • 图片可保存在仓库的另一个分支中。
  • 可使用 PicGo 或 PicGo-Core 上传图片,并通过 jsdelivr 提供 CDN 加速。

部署与域名

  • 推荐用 Vercel 部署,支持主分支更新后自动拉取和部署。
  • Vercel 支持多种前端技术栈,可配置环境变量并修改自定义域名。

安全与站点配置

  • GitHub Token 需要妥善保管,不应提交到仓库,可用 .env.local 或部署平台环境变量读取。
  • sitemap 可在静态构建前生成,也可在服务端渲染时通过 API 接口提供。