卡片流首页配合焦点图,置顶文章自动进入焦点区
hugo-theme-nebula — Hugo 博客模板
作者 tanglx02
Nebula 是一款面向技术博客的 Hugo 主题,提供卡片流首页、全文搜索、暗色模式、文章目录、图片 Pipeline、系列文章与代码高亮等功能,采用 MIT 许可。
看看你的网站会是什么样
浏览真实页面截图,比较内容排版与手机效果。点击下方缩略图切换,放大查看整页细节。
目前有 1 张原始预览,可打开完整图片查看设计细节。
截图用于了解视觉与布局,交互效果请以实际项目为准。
值得关注的模板亮点
从已有项目资料中,快速了解它的特点。
构建期生成完整正文索引的全文搜索,支持 Ctrl+K 或 / 呼出与 ?q= 深链
搜索索引提供 single、shard、auto 三种模式,auto 按正文总体积自动选择
暗色模式跟随系统并支持手动切换与记忆
page bundle 图片自动生成 WebP 多尺寸 srcset,带 width/height 防布局偏移
代码块支持 filename、行号、指定行高亮与一键复制
模板详细介绍
Nebula 是 tanglx02 开发的 Hugo 博客主题,定位为面向技术博客的清爽现代风格。首页采用焦点图加卡片流布局,置顶文章自动进入焦点区。主题内置完整全文搜索,索引在构建期生成,包含每篇文章的完整正文纯文本,支持 Ctrl+K 或 / 呼出,并可通过 ?q= 深链访问;搜索索引提供 single、shard、auto 三种模式,auto 按正文总体积自动选择单文件或分片。外观方面支持跟随系统、手动切换并记忆的暗色模式,文章页自动生成带滚动高亮的目录。
内容组织上,主题支持通过 params.content.sections 配置多个内容范围,不写死 posts;系列文章通过 series 与 series_order 显示进度和系列内上下篇。图片处理区分 page bundle 资源与 static 路径:前者自动生成 WebP 多尺寸 srcset 并带 width/height 防布局偏移,后者保持原样。代码块支持 macOS 风格窗口、语言标签、filename、行号、指定行高亮与一键复制。灯箱使用 role=dialog 并实现 Focus Trap。主题内置 zh-CN、zh-TW、en 三种语言文案,多语言站点自动输出 hreflang。
使用限制方面,主题要求 Hugo extended 0.128 及以上版本,图片 WebP 处理与 SCSS 依赖 extended 版本;搜索分片模式依赖较新的 resources.Publish,实测需要 Hugo 0.167+,单文件索引模式在所有支持版本均可用。主题未内置 KaTeX 或 MathJax,数学公式不会渲染为公式排版,需要自行在 extra-head.html 中引入。正文内联链接的点击区域小于 24px,属于 WCAG 2.2 内联豁免。移动端仅在 WebKit 引擎下模拟验证,未做真机测试。访问统计与评论为可选外部服务,默认关闭,未与真实服务联调。
适合你的项目吗?
适用场景
- 搭建以技术文章为主的个人博客,需要卡片流首页与全文搜索
- 内容包含系列文章,希望展示系列进度与系列内上下篇导航
- 文章配图较多,希望自动生成 WebP 多尺寸响应式图片
- 需要暗色模式、文章目录、代码高亮与一键复制等阅读体验功能
- 多语言站点,需要内置 zh-CN、zh-TW、en 文案与 hreflang 输出
适合人群
- 使用 Hugo 并希望快速获得完整博客外观的技术写作者
- 需要全文搜索且文章数量可能增长到数百篇的站点
- 希望内容范围可配置、不局限于 posts 目录的站点
- 需要 MIT 许可下自由使用、修改和分发的项目
上手与定制指南
结合仓库当前版本的说明,按下面的资料检查内容、配置与运行要求。
- 1
需要安装 Hugo extended 0.128 或更高版本,图片 WebP 处理与 SCSS 依赖 extended 版本
- 2
搜索分片模式依赖较新的 resources.Publish,实测需要 Hugo 0.167+,单文件索引模式在所有支持版本均可用
- 3
配置中需保留 home 的 JSON 输出用于生成搜索索引
- 4
生产构建使用 hugo --gc --minify,不要将 hugo server 的输出作为生产产物
- 5
演示图片、字体、图标等第三方素材需按各自许可核对,不能仅凭代码的 MIT 许可判断
授权与来源资料
使用条件与限制
免费使用 · 保留许可声明本次收录的是公开仓库中采用 MIT 许可的免费版本;免费范围为该版本代码,不代表外部服务或第三方素材免费。
使用时需要遵守
- 允许免费使用、修改、商用和分发该版本代码。
- 分发代码副本或实质性部分时,保留原作者版权声明和完整 MIT 许可声明。
- 代码按现状提供;担保与责任限制以原许可证及适用法律为准。
额外费用与待核对事项
- 演示图片、字体、图标及其他第三方素材需按各自许可核对,不能仅凭代码的 MIT 许可判断。
- 域名、托管、数据库、支付或 AI 等外部服务可能另外收费。
- 使用该主题必须安装 Hugo extended 版本且版本号不低于 0.128,普通版 Hugo 无法进行图片 WebP 处理与 SCSS 编译。
- 搜索分片模式依赖较新的 resources.Publish,实测需 Hugo 0.167 及以上;单文件索引模式在所有支持版本可用。
- 主题未内置 KaTeX 或 MathJax,数学公式不会渲染为公式排版,需自行在 extra-head.html 中引入。
- 正文内联链接的点击区域小于 24px,属于 WCAG 2.2 内联豁免,放大 padding 会破坏排版。
- 移动端仅在 WebKit 引擎下模拟验证,未做真机测试。
- 访问统计与评论为可选外部服务,默认关闭,且未与真实服务联调。
查看原文依据
Permission is hereby granted, free of charge
许可证原文
- **Hugo extended** ≥ 0.128(extended 版本必需:图片 WebP 处理与 SCSS 需要)
README 原文
> 搜索分片(`mode = "shard"` / auto 触发分片)依赖较新的 `resources.Publish`,实测 **0.167+ 可用**;单文件索引模式在所有支持版本均可用。
README 原文
- 未内置 KaTeX / MathJax(数学公式不渲染为公式排版;可在 `layouts/partials/extra-head.html` 自行引入)
README 原文
- 正文内联链接的点击区域 < 24px(WCAG 2.2 内联豁免,放大 padding 会破坏排版)
README 原文
- 移动端仅在 WebKit 引擎下模拟验证,未做真机测试
README 原文
https://github.com/tanglx02/hugo-theme-nebula/blob/main/LICENSEhttps://github.com/tanglx02/hugo-theme-nebula/blob/main/README.md- 访问统计与评论为可选外部服务,默认关闭,未与真实服务联调
README 原文
DeepSeek 根据仓库许可证和 README 整理 ·2026-10-07。结果仅覆盖已读取资料,依赖、图片、字体及后续条款变更以各自原文为准。
项目核对记录与介绍依据
模板资料
- 来源平台
- GitHub
- 资料与维护参考分
- 资料一般 · 68 / 100
- 技术栈
- Hugo
- 网站类型
- 博客
这个分数如何计算
本站按许可资料(最高30分)、演示链接(12分)、预览图(10分)、Star数(15分)、记录的维护时间(15分)、描述完整度(8分)、功能记录(5分)和分类资料(5分)计算。它不是代码、安全或性能测试,也不是 Google 评分;有链接不代表已实测可用。
这个项目需要核对什么
- 记录的仓库更新时间
- 2026-10-07
- 截图检查日期
- 2026-10-07
目前没有记录演示链接。请依据仓库说明在本地评估;仅凭截图无法确认交互行为。
目录记录的主要技术栈是 Hugo。请通过依赖清单和锁文件核对实际版本与托管要求。这些说明基于收录资料,不代表代码审计或部署实测。
查看具体选型方法 →介绍的制作与核对状态
介绍由 AI 辅助整理目录与仓库资料。仓库作者不等于这篇介绍的审核者。
审核声明: [email protected] · 2026-10-08
查看当时使用的来源资料
SHA-256: 0e2bbd27da6f19940fa3cb46eb67d57727e7bee2cbef599063675f53d62700d7
2026-10-07T21:44:46.442Z
来源文件 / 仓库# Nebula — 一款清爽现代的 Hugo 博客主题
[](https://github.com/tanglx02/hugo-theme-nebula/actions/workflows/ci.yml)
[](https://gohugo.io/)
[](LICENSE)
面向技术博客的 Hugo 主题:**卡片流首页 + 焦点图、完整全文搜索、暗色模式、文章目录、图片 Pipeline、系列文章、代码高亮与一键复制**。零运行时依赖、零外部 CDN 请求。
| 亮色 | 暗色 |
| --- | --- |
|  |  |
| 文章页(含目录) | 全站搜索 |
| --- | --- |
|  |  |
| 归档页 | 移动端 |
| --- | --- |
|  |  |
## 特性
- 🎴 **焦点图 + 卡片流首页**:置顶文章自动进入焦点区
- 🔍 **完整全文搜索**:正文任意位置(含数万字长文末尾)均可检索;`Ctrl+K` / `/` 呼出;支持 `?q=` 深链
- 🧩 **自动索引模式**:`mode = "auto"` 按索引体积自动决定单文件或分片,无需用户判断
- 🌗 **暗色模式**:跟随系统 + 手动切换 + 记忆
- 📑 **文章目录**:自动生成、滚动高亮
- 🖼️ **图片 Pipeline**:page bundle 图片自动生成 WebP 多尺寸 `srcset`,带 `width/height` 防 CLS;static 路径保持原样
- 📚 **系列文章**:`series` + `series_order`,显示进度与系列内上下篇
- 💻 **代码块**:macOS 风格窗口、语言标签、`filename` / 行号 / 指定行高亮、一键复制
- 🖼️ **灯箱**:`role=dialog` + Focus Trap(Tab 循环、背景 inert、Esc 关闭、焦点归还)
- 🌍 **i18n**:内置 `zh-CN` / `zh-TW` / `en`
- 🔀 **多 Section**:内容范围通过 `params.content.sections` 配置,不写死 `posts`
- 🔗 **分享**:可选开关(复制链接 / X / Telegram / Facebook / Reddit / 微博 / 微信)
- 📡 **RSS 增强**:标题 / 描述 / 作者 / 分类 / pubDate / updated,支持 `fullContent` 全文输出
- 🔎 **SEO**:canonical、OG、Twitter Card、BlogPosting + WebSite JSON-LD、SearchAction、hreflang、sitemap、robots
- ♿ **无障碍**:键盘可达、焦点可见、`prefers-reduced-motion`、触屏点击区 ≥ 24px
- ⚡ **零依赖**:无 jQuery / 无外部字体 / 无 CDN
## 环境要求
- **Hugo extended** ≥ 0.128(extended 版本必需:图片 WebP 处理与 SCSS 需要)
### 版本兼容(CI 实测)
最低版本不是估计值:CI 用多个真实 Hugo 版本对 `exampleSite` 做生产构建。
| Hugo 版本 | 构建结果 |
| --- | --- |
| 0.128.0 | ✅ 通过 |
| 0.162.0 | ✅ 通过 |
| 0.167.0 | ✅ 通过 |
| latest | ✅ 通过 |
> 搜索分片(`mode = "shard"` / auto 触发分片)依赖较新的 `resources.Publish`,实测 **0.167+ 可用**;单文件索引模式在所有支持版本均可用。
## 快速开始
```bash
hugo new site myblog && cd myblog
git init
git submodule add https://github.com/tanglx02/hugo-theme-nebula.git themes/hugo-theme-nebula
```
最小配置(`hugo.toml`):
```toml
baseURL = 'https://your-domain.com/'
locale = 'zh-CN'
title = '我的博客'
theme = 'hugo-theme-nebula'
hasCJKLanguage = true
[pagination]
pagerSize = 8 # 每页文章数(Hugo ≥ 0.128 用此项,旧的 paginate 已失效)
[outputs]
home = ['HTML', 'RSS', 'JSON'] # JSON 用于生成搜索索引,必须保留
[markup]
[markup.highlight]
noClasses = false # false = 使用 CSS class,代码配色可随暗色模式切换
[markup.goldmark]
[markup.goldmark.renderer]
unsafe = false # 主题不依赖 raw HTML;仅当你的文章需要原始 HTML 时才设为 true
[params]
author = '你的名字'
description = '博客描述'
```
写文章并预览:
```bash
hugo new content posts/hello-world.md
hugo server -D # 打开 http://localhost:1313
```
> 生产构建请用 `hugo --gc --minify`,**不要**把 `hugo server` 的输出当作生产产物(它会注入 livereload)。
## 完整配置参考
```toml
[params]
author = 'Tanglx'
subtitle = '记录安全与运维的每一次实践'
description = '站点 SEO 描述'
avatar = 'img/avatar.svg' # 放站点 static/ 下
logoText = 'N' # 无 logo 图时导航栏显示的字母
homePostCount = 8 # 首页"最新文章"数量
footerText = 'Keep Learning.'
license = '本文采用 CC BY-NC-SA 4.0 许可,转载请注明来源。'
[params.profile]
bio = '侧边栏个人名片简介'
[params.socials] # 留空即不显示对应图标
github = 'https://github.com/yourname'
email = 'mailto:[email protected]'
bilibili = 'https://space.bilibili.com/xxx'
[params.sidebar]
hotCount = 6
# ---------- 内容范围(不再写死 posts) ----------
[params.content]
sections = ["posts"] # 可多个:["posts", "tutorials", "notes"]
# ---------- 搜索 ----------
[params.search]
enable = true
mode = "auto" # auto(默认)| single | shard
autoThreshold = 512000 # auto 模式的阈值(正文总字节数,约 500KB)
contentLimit = 0 # 单篇正文索引上限(0 = 不限制,保证全文可搜)
shard = false # 兼容旧配置:true 等价于 mode = "shard"
# ---------- 图片 Pipeline ----------
[params.images]
widths = [480, 768, 1200] # 生成的宽度档位
sizes = "(max-width: 768px) 100vw, 900px"
quality = 85
format = "webp"
# ---------- RSS ----------
[params.rss]
fullContent = false # true = 输出全文(content:encoded),false = 仅摘要
limit = 20
# ---------- 分享(默认关闭) ----------
[params.share]
enable = false
providers = ["copy", "x", "telegram", "facebook"] # 可选 reddit / weibo / wechat
# ---------- 评论(默认关闭) ----------
[params.comments]
enable = false
provider = 'giscus' # giscus | waline | twikoo | disqus
[params.comments.giscus]
repo = 'yourname/yourrepo'
repoID = 'R_xxxxxxx'
category = 'Announcements'
categoryID = 'DIC_xxxxxxx'
[params.views]
enable = false
[params.busuanzi]
enable = false
```
### 导航菜单
```toml
[[menu.main]]
name = '首页'
url = '/'
weight = 1
[[menu.main]]
name = '归档'
url = '/archives/'
weight = 5
[[menu.main]]
name = 'GitHub'
url = 'https://github.com/yourname'
weight = 6
[menu.main.params]
external = true # 新标签页打开
```
归档页需要 `content/archives/_index.md`:
```yaml
---
title: "文章归档"
layout: "archive"
---
```
## 全文搜索与索引模式
索引由 `layouts/_default/index.json` 在构建期生成,包含每篇文章的**完整正文纯文本**(仅压缩连续空白),因此正文任意位置都能被检索。
三种模式:
| 模式 | 行为 | 适用 |
| --- | --- | --- |
| `single` | 单个 `index.json` 包含全部正文 | 小型站点,最简单 |
| `shard` | 主索引只含元数据,正文拆到 `search/<slug>.json`,前端并发加载 | 大型站点 |
| `auto`(默认) | 按正文总体积自动在 single / shard 之间选择(阈值 `autoThreshold`) | 推荐 |
实测数据(每篇约 3000 字,`auto` 默认阈值 500KB):
| 文章数 | single 主索引 | auto 结果 |
| --- | --- | --- |
| 25 篇 | 225 KB | 单索引(未超阈值) |
| 100 篇 | 899 KB | 分片 |
| 300 篇 | 2.6 MB | 分片 |
| 500 篇 | 4.4 MB | 分片(主索引约 10 KB + 500 个分片) |
搜索索引加载失败时会有明确提示:主索引失败显示错误并可**重试**;部分分片失败时提示"部分索引加载失败(N 篇未能加载)"且仍返回其他文章的结果(不会误报"没有找到")。
## 图片处理
两种图片写法,行为不同:
1. **page bundle 资源**(推荐):把图片与 `index.md` 放在同一目录,正文写 ``
→ 自动生成 WebP 多尺寸 `srcset`、`sizes`、`width/height`(防 CLS)、`loading="lazy"`,并保留原图供灯箱放大。
2. **static 路径或外链**:``、`https://…`
→ 与旧版完全一致,不做处理(**已有站点的资源写法不受影响**)。
SVG 等不可处理的资源会按原样输出。缺失图片不会导致构建失败。
## 系列文章(Series)
```yaml
---
title: "Hugo 建站系列:主题与样式"
series: ["Hugo 建站系列"]
series_order: 2 # 可选;缺省时按日期排序
---
```
文章页会显示系列名、进度(第 N 篇 / 共 M 篇)、系列全部文章列表、系列内上一篇/下一篇。**未配置 `series` 时完全不输出**,不影响原有的上一篇/下一篇导航。
## 多语言(i18n)
主题内置 `i18n/zh-CN.yaml`、`zh-TW.yaml`、`en.yaml`。单语言站点无需配置;多语言站点示例:
```toml
defaultContentLanguage = 'zh-cn'
[languages]
[languages.zh-cn]
languageName = '简体中文'
weight = 1
[languages.zh-cn.params]
description = '中文站点描述'
[languages.en]
languageName = 'English'
weight = 2
```
多语言站点会自动输出 `hreflang` 标签。JS 中的提示文案通过模板注入(`window.NEBULA_I18N`),不在脚本里硬编码。
## Front Matter 字段
```yaml
---
title: "文章标题"
date: 2026-10-08
lastmod: 2026-10-08
draft: false
description: "摘要:用于列表卡片、搜索片段与 SEO"
author: "" # 留空使用站点 author
tags: ["Hugo"]
categories: ["效率工具"]
series: ["Hugo 建站系列"] # 可选
series_order: 1 # 可选
cover: "/img/cover/x.png" # 封面;无则用渐变占位
sticky: false # true = 置顶并进入首页焦点区
# ---- 显示控制(全部可选,默认值与历史视觉一致)----
toc: true # 目录
comments: true # 评论
showDate: true # 日期
showLastmod: false # 更新日期
showReadingTime: true # 阅读时长
showWordCount: true # 字数
showTags: true # 标签
showRelated: true # 相关文章
showNav: true # 上下篇导航
showSeries: true # 系列卡片
showShare: false # 分享(也可用 params.share.enable 全局开启)
lightbox: true # 图片灯箱
---
```
## 分享
默认关闭。开启后为纯链接按钮(不加载任何第三方脚本):
```toml
[params.share]
enable = true
providers = ["copy", "x", "telegram", "facebook", "weibo", "wechat"]
```
## 代码块
````markdown
```js {filename="app.js"}
console.log(1)
```
```python {filename="utils.py" linenos=true hl_lines="2-3"}
import os
print(1)
print(2)
```
````
支持 `filename`(显示文件名)、`linenos`(行号)、`hl_lines`(高亮行)、未知语言与无语言代码块(安全降级为纯文本)。
## exampleSite / 本地开发
```bash
git clone https://github.com/tanglx02/hugo-theme-nebula.git
cd hugo-theme-nebula
# 生成压力测试数据(可选,用于跑完整测试)
python3 tools/gen_testdata.py --posts-dir exampleSite/content/posts
# 预览示例站点
hugo server --source exampleSite --themesDir ../..
# 生产构建
hugo --source exampleSite --themesDir ../.. --gc --minify -d ../public
```
## 测试与 CI
CI(`.github/workflows/ci.yml`)在 GitHub Actions 上**真实运行**以下检查,任一失败即 CI 失败:
| Job | 内容 |
| --- | --- |
| Build (0.128 / 0.162 / 0.167 / latest) | 生成压力数据 → 生产构建 → 产物校验 → 搜索索引完整性 → 草稿/未来排除 → livereload 检查 |
| Sub-directory baseURL | `/blog/` 构建 + 断言无越界路径、无 basePath 重复 |
| Static checks | 站内死链、索引完整性、功能断言(图片/Series/RSS/SEO/代码块/i18n)、多 Section 构建、auto 阈值分片 |
| Browser tests (chromium / firefox / webkit) | 响应式审计(320–1440)、交互、灯箱 Focus Trap、搜索边界与竞态、分片失败处理、三种 baseURL 部署 |
本地运行(Windows 需设置 `HUGO_BIN`,本地有代理时设置 `PLAYWRIGHT_PROXY`):
```bash
export HUGO_BIN=/path/to/hugo # Linux/macOS 可省略(默认 hugo)
python3 tools/serve.py public 8080 & # 独立静态服务器(勿用 hugo server 产物测试)
python3 tools/link_check.py public # 死链
python3 tools/check_index.py public/index.json # 索引完整性
python3 tools/check_features.py public # 功能断言
AUDIT_BROWSERS=chromium python3 tools/audit.py http://127.0.0.1:8080
PW_BROWSERS=chromium python3 tools/interactions.py http://127.0.0.1:8080
python3 tools/verify_lightbox.py http://127.0.0.1:8080 chromium
python3 tools/verify_search_edge.py http://127.0.0.1:8080
python3 tools/verify_search_shard.py http://127.0.0.1:8090 chromium
python3 tools/bench_index.py 25,100,300,500 # 索引规模压测
```
## 更新日志
### v1.0.3
- **CI 覆盖真实浏览器测试**:Playwright(Chromium/Firefox/WebKit)+ 死链 + 功能断言 + 多 baseURL,任一失败即 CI 失败
- **灯箱完整 Focus Trap**:Tab/Shift+Tab 在 dialog 内循环、背景 `inert`、Esc/关闭按钮/遮罩关闭、焦点归还、链接图片走原生跳转
- **分片加载失败可见化**:主索引失败显示错误 + 重试;部分分片失败明确提示且不影响其他结果(不再静默吞掉)
- **搜索 `mode = auto`**:按索引体积自动切换 single/shard;阈值可配置;向后兼容 `shard = true`
- **内容 section 可配置**:`params.content.sections`,不再写死 `posts`
- **i18n 基础架构**:zh-CN / zh-TW / en,JS 文案由模板注入
- **不再要求 `unsafe = true`**:主题核心不依赖 raw HTML
- **图片 Pipeline**:page bundle 图片生成 WebP + `srcset` + 尺寸防 CLS;static 路径不破坏
- **SEO 增强**:WebSite JSON-LD + SearchAction(配合 `?q=` 深链)、og:image 尺寸/alt、hreflang
- **RSS 增强**:作者 / 分类 / updated / `fullContent` 开关
- **Series**:系列名、进度、系列内上下篇(未配置时不输出)
- **文章级显示控制**:`toc` / `comments` / `showDate` / `showLastmod` / `showReadingTime` / `showWordCount` / `showTags` / `showRelated` / `showNav` / `showSeries` / `showShare` / `lightbox`
- **分享**:可选 providers,纯链接实现
- **代码块**:支持 `filename` / `linenos` / `hl_lines`
- 修复:`range` 内数值型外部变量赋值不生效导致的 auto 模式失效;SVG 资源调用 `.Width` 崩溃;`with` 改写上下文导致的 Series 模板错误
### v1.0.2
- 修复索引截断(正文 3000 字后无法搜索);修复版本兼容声明;JSON-LD 时区;灯箱无障碍;搜索竞态;子目录菜单路径重复;Firefox 首次复制无反馈
### v1.0.1
- 发布前验收修复(构建阻塞、子目录路径、响应式溢出、无障碍等 14 项)
### v1.0.0
- 首个正式版本
## 已知限制
- 未内置 KaTeX / MathJax(数学公式不渲染为公式排版;可在 `layouts/partials/extra-head.html` 自行引入)
- 正文内联链接的点击区域 < 24px(WCAG 2.2 内联豁免,放大 padding 会破坏排版)
- 搜索分片需要 Hugo 0.167+
- 移动端仅在 WebKit 引擎下模拟验证,未做真机测试
- 访问统计与评论为可选外部服务,默认关闭,未与真实服务联调
## 许可证
[MIT](LICENSE) © 2026 tanglx02
看看同类模板
对比同技术栈与用途的模板,找到更适合的视觉与内容结构。

hugo-PaperMod
PaperMod 是 Hugo 生态里知名度较高的主题之一,定位很明确:给博客和轻量作品集站点提供一套干净、响应式的阅读界面。
Hugo · 作品集

LoveIt
❤️A clean, elegant but advanced blog theme for Hugo 一个简洁、优雅且高效的 Hugo 主题
Hugo · 博客

hugo-coder
A minimalist blog theme for hugo.
Hugo · 博客

blowfish
Personal Website & Blog Theme for Hugo
Hugo · 博客

hugo-paper
🪺 A simple, clean, customizable Hugo theme
Hugo · 博客

hextra
Hextra 是一个 Hugo 主题,定位在文档站与博客之间:既提供侧边栏导航、目录、面包屑、分页这类文档站结构,也能承载博客内容。
Hugo · 文档
