语速
管理 Hugo 博客时,常常需要在终端和编辑器之间来回切换。为了简化这个流程,我开发了 hugo-admin,一个基于 Flask 的轻量级 Web 管理界面。
为什么需要它
使用 Hugo 写博客的流程通常是这样的:
- 终端执行
hugo new post/xxx.md - 用编辑器打开文件写内容
- 终端启动
hugo server预览 - 切换浏览器查看效果
- 不满意就回到编辑器修改
这个流程没什么问题,但如果能在一个地方完成所有操作,会更方便。
主要功能
hugo-admin 提供了以下功能:
- 仪表板: 博客统计信息概览
- 文章管理: 浏览、搜索、筛选文章
- Markdown 编辑器: 在线编辑,支持自动保存
- Hugo 服务器控制: 启停服务器,实时查看日志
- 图片管理: 上传和管理文章图片
界面展示

技术栈
后端使用 Flask + Flask-SocketIO,前端使用 Tailwind CSS + Alpine.js。实时日志推送基于 WebSocket 实现。
| |
安装使用
| |
启动后访问 http://127.0.0.1:5000 即可。
核心实现
Python 版本使用 SQLite 做缓存,避免每次都扫描文件系统:
| |
Hugo 服务器控制基于 psutil 管理进程,支持实时日志推送:
| |
高级版本
除了开源的 Python 版本,我还开发了一个 Go 语言实现的高级版本。相比开源版本,Go 版本具有以下优势:
- 更高性能: Go 语言编译后执行效率更高
- 更低资源占用: 内存占用和 CPU 使用更少
- 单文件部署: 编译后为单个可执行文件,无需依赖环境
- 更多功能: 包含更多高级特性
- 直接使用 Hugo API: 无需 SQLite3 缓存,直接调用 Hugo API 获取文章信息,更轻量高效
高级版本售价 $10 美元,点击这里购买后会提供完整源代码。如果你对性能和部署便利性有更高要求,可以考虑高级版本。
后续计划
- Git 操作界面
- 批量操作支持
- Docker 部署
项目开源,欢迎 Star 和 PR。
