news 2026/8/21 14:14:58

5分钟快速上手Mirror:用GitHub Issues搭建你的第一个个人博客

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
5分钟快速上手Mirror:用GitHub Issues搭建你的第一个个人博客

5分钟快速上手Mirror:用GitHub Issues搭建你的第一个个人博客

【免费下载链接】MirrorA blogging tool powered by GitHub API. Write your blog on GitHub issue.项目地址: https://gitcode.com/gh_mirrors/mirror9/Mirror

想拥有自己的博客,却不想买服务器、不想折腾数据库?Mirror这款免费开源博客工具可以帮你用GitHub Issues 搭建个人博客——你只需要像发 Issue 一样写文章,Mirror 会自动把它们渲染成漂亮的博客页面,全程零后端、零维护成本。本文是一份新手友好、图文并茂(用表格和步骤代替截图)的快速上手教程,跟着做,5 分钟就能上线你的第一个博客。

Mirror 是什么:为什么用 GitHub Issues 写博客

Mirror 是一个基于 GitHub API 的轻量博客工具,核心思路非常巧妙:把 GitHub 仓库的 Issue 当作博客文章。你写文章 = 发 Issue,读者评论 = 回 Issue,一切都发生在 GitHub 上,你只需要一个前端页面把它展示出来。

用 Mirror 搭建博客的优势一目了然:

对比项传统博客Mirror 博客
服务器费用需要买主机/域名✅ 完全免费
数据库维护需要备份和管理✅ 无需数据库
写作方式后台编辑器✅ 直接用 Issue 写
评论系统需接入第三方✅ 自带 Issue 评论
部署难度较高✅ 一条命令构建

是不是很心动?下面直接开始动手 🚀

搭建博客前的准备工作

开始之前,请确认你手头有这三样东西:

  1. 一个 GitHub 账号:用来创建仓库、发 Issue 写文章
  2. 一个存放文章的仓库:在 GitHub 上新建一个公开仓库(比如叫blog),以后每篇 Issue 就是一篇文章
  3. 一个静态托管平台:GitHub Pages、Vercel、Netlify 等都可以

💡 提示:仓库建议保持公开,这样别人可以直接通过 Issue 评论,访客也能看到文章源码。

三步快速部署:克隆、配置、构建

第一步:获取 Mirror 源码

打开终端,克隆项目到本地(也可以直接下载 ZIP 解压):

git clone https://gitcode.com/gh_mirrors/mirror9/Mirror

然后进入目录,安装依赖:

npm install

第二步:修改配置文件

Mirror 的所有配置都集中在一个 HTML 文件里——index.sample.html。文件末尾有一段window.config,把它改成你自己的信息即可:

window.config = { organization: false, // 是否使用组织账号,true/false order: 'UPDATED_AT', // 文章排序:按更新时间或创建时间 title: 'Mirror', // 博客标题 user: '你的GitHub用户名', repository: '你的仓库名', // 存放文章的仓库 authors: '你的GitHub用户名', ignores: '17,13', // 忽略这些编号的 Issue(不展示) perpage: 5, // 每页显示的文章数 }

保存后,把这份文件重命名为index.html,放到项目根目录即可。

第三步:构建并部署

运行构建命令,生成静态文件(输出到docs目录):

npm run build

构建完成后,把项目里的docs文件夹整个上传到你的托管平台(比如 GitHub Pages 的发布目录),博客就上线了 🎉

💡 本地预览调试可以运行npm start,Mirror 会自动启动开发服务器,方便你实时查看效果。

配置文件详解:一页看懂所有参数

表格里整理了常见配置项的含义,方便你按需调整:

配置项作用示例值
user你的 GitHub 用户名或组织名octocat
repository存放文章的仓库名blog
title浏览器标签页显示的博客标题我的博客
perpage首页每页展示几篇文章5
order排序字段:CREATED_ATUPDATED_ATUPDATED_AT
ignores跳过不展示的 Issue 编号,逗号分隔17,13
organization数据源是否为组织账号false

如果想了解数据是怎么从 GitHub 拉取的,可以看看 src/api/issues.js 和 src/api/issue.js 中的 GraphQL 查询;页面渲染逻辑则集中在 src/template/issue.js 里。

开始写博客:Issue 就是你的文章

部署完成,接下来就是最重要的环节——写作。流程简单到令人发指:

  1. 打开你的 GitHub 仓库,点击New issue(新建 Issue)
  2. 标题写文章标题,正文用 Markdown 写内容
  3. 可以顺手打上标签(Label),Mirror 会把标签显示在文章底部
  4. 点击提交,回到你的博客刷新页面,文章就出现了 ✨

Mirror 会自动处理发布时间、文章列表、分页等细节,你只需要专注于写作本身。文章内容用 Markdown 渲染(基于github-markdown-css),代码高亮、列表、引用统统支持,体验和 GitHub 上一模一样。

开启评论:让读者参与讨论

每篇文章底部,Mirror 会自动显示评论按钮。读者点击View Comments后,就能看到所有评论——这些评论其实就是你这篇 Issue 下的回复,完全复用 GitHub 的评论体系,不需要任何第三方评论插件

评论的加载逻辑在 src/index.js 的getComments方法里,感兴趣的话可以翻一翻源码,了解它是如何按页拉取评论的。

常见问题与避坑指南

Q1:文章不显示?检查window.config里的userrepository是否填写正确,同时确认仓库是公开的、Issue 状态为 Open。

Q2:不想展示某篇文章怎么办?ignores配置里填上该 Issue 的编号即可,例如ignores: '17,13'会跳过编号 17 和 13 的两篇。

Q3:想用组织账号发布博客?organization设为trueuser填组织名即可,数据会从组织仓库读取。

Q4:每次都要重新构建吗?是的,改配置或更新代码后需要重新npm run build并上传docs目录;如果接入了 CI 自动部署,推送代码即可自动完成更新。

总结:你的 GitHub Issues 博客已上线

到这里,你的第一个基于GitHub Issues 的个人博客就正式完工了!回顾一下,整个过程只需要三步:克隆项目、改配置、构建部署,完全免费、无需后端。之后写博客就是"发 Issue"这么简单,评论、标签、分页统统自动搞定。

如果你喜欢这种"用 Issue 写作"的极简理念,还可以继续探索:自定义样式可以修改 src/style/ 下的样式文件,深入定制请查阅 package.json 中的脚本命令。现在就打开你的 GitHub,写下第一篇 Issue 吧 📝

【免费下载链接】MirrorA blogging tool powered by GitHub API. Write your blog on GitHub issue.项目地址: https://gitcode.com/gh_mirrors/mirror9/Mirror

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/21 14:14:21

Agent框架实战反思:从功能挑战到架构应对的工程化思考

1. 项目概述:当Agent框架不再是“银弹”最近和几个团队交流,发现一个挺有意思的现象:大家一提到要搞自动化、智能化的工作流,第一反应就是“上Agent框架”。仿佛Agent框架成了解决一切复杂任务的万能钥匙,从数据分析到…

作者头像 李华
网站建设 2026/8/21 14:13:58

phpstan-doctrine 实战:DQL 校验如何帮你抓住 10 类查询错误

phpstan-doctrine 实战:DQL 校验如何帮你抓住 10 类查询错误 【免费下载链接】phpstan-doctrine Doctrine extensions for PHPStan 项目地址: https://gitcode.com/gh_mirrors/ph/phpstan-doctrine 一句话总结:phpstan-doctrine 是 PHPStan 官方的…

作者头像 李华
网站建设 2026/8/21 14:12:17

基于智能体的社会经济系统建模:从微观规则到宏观涌现的仿真实践

1. 项目概述:当社会经济系统遇上“数字沙盘” 如果你尝试过用传统的数学模型去预测一个市场的波动,或者去理解一项新政策如何在一个社区中扩散,你大概率会感到挫败。现实世界太“吵”了——每个人都有自己的想法、习惯、社交网络和随机行为&a…

作者头像 李华
网站建设 2026/8/21 14:11:22

微信消息数据库解密完整指南:WechatDecrypt 一行命令还原 ChatMsg.db

微信消息数据库解密完整指南:WechatDecrypt 一行命令还原 ChatMsg.db 【免费下载链接】WechatDecrypt 微信消息解密工具 项目地址: https://gitcode.com/gh_mirrors/we/WechatDecrypt WechatDecrypt 是一款开源的微信 PC 端消息数据库解密工具,它…

作者头像 李华
网站建设 2026/8/21 14:11:00

CorelDRAW高效选择技巧:从基础操作到复杂场景实战

在实际平面设计工作中,无论是处理复杂的广告物料、品牌视觉系统,还是简单的宣传单页,高效、精准地选择对象都是最基础也是最频繁的操作。很多设计师在使用 CorelDRAW 时,常常因为不熟悉选择工具的高级用法,导致操作效率…

作者头像 李华