这个站点用 Jekyll 构建,托管在 GitHub Pages。选它的理由很简单:写文章就是往仓库里丢一个 Markdown 文件,推送即发布,零运维、零构建。
目录结构
.
├── _config.yml # 站点配置(标题 / 链接 / 插件)
├── _posts/ # 博客文章,文件名 YYYY-MM-DD-标题.md
├── _layouts/ # 页面模板:default.html / post.html
├── blog/index.html # 文章列表页(/blog/)
├── index.html # 首页
├── styles.css # 全站样式(含亮/暗主题)
└── main.js # 语言切换、主题切换等
发布一篇新文章
第一步:在 _posts/ 下新建 2026-09-11-my-new-post.md,文件名必须以日期开头、用英文 slug。
第二步:顶部写好 front matter:
---
title: 我的新文章
date: 2026-09-11 09:00:00 +0800
lang: zh
tags: [示例]
---
第三步:正文用 Markdown 书写,支持代码高亮、表格、引用:
def greet(name: str) -> str:
return f"Hello, {name}!"
第四步:提交并推送:
git add _posts && git commit -m "post: 我的新文章" && git push
稍等一两分钟,文章就会出现在 https://ivanjobs.github.io/blog/。
为什么够用
- RSS:
jekyll-feed插件自动生成/feed.xml,可被 RSS 阅读器订阅。 - 站点地图:
jekyll-sitemap自动生成sitemap.xml,方便收录。 - 代码高亮:默认 Rouge,无需额外配置。
- 本地预览:装好 Ruby 后
bundle install && bundle exec jekyll serve, 打开http://127.0.0.1:4000实时预览(不装 Ruby 也没关系,直接推 送到 GitHub 由 Pages 构建)。
一点约定
- 文件名用英文 slug,
title可以用中文。 - 每篇尽量配一句摘要(列表页会取正文首段作为摘要)。
- 私密 / 求职相关信息一律不进仓库。
就这样,去写你的第一篇吧。