这个项目能做什么
Hugo 是一款由 bep、spf13 及贡献者使用 Go 语言编写的静态网站生成器。它以速度优化和配置灵活著称,广泛应用于企业、政府、非营利组织、教育、新闻、活动和项目网站,以及文档网站、图像作品集、落地页、博客和简历/CV。
README 中描述的核心能力包括:
- 模板与内容组织:先进的模板系统、灵活的框架、多语言支持以及用于构建内容的分类法(taxonomy)系统。
- 开发服务器:内置 Web 服务器可在开发期间实时显示内容、结构、行为和呈现方式的更改。
- 资源流水线:
- CSS 处理:支持打包、转换、压缩、创建 Source Maps、执行 SRI 哈希以及与 PostCSS 集成。
- 图像处理:支持转换、调整大小、裁剪、旋转、调整颜色、应用滤镜、叠加文本和图像以及提取元数据。
- JavaScript 打包:支持将 TypeScript 和 JSX 转译为 JavaScript,并进行打包、Tree Shaking、压缩、创建 Source Maps 和执行 SRI 哈希。
- Sass 处理:支持将 Sass 转译为 CSS,并进行打包、Tree Shaking、压缩、创建 Source Maps、SRI 哈希以及 PostCSS 集成。
- Tailwind CSS 处理:将实用类编译为标准 CSS,并进行打包、Tree Shaking、优化、压缩、SRI 哈希以及 PostCSS 集成。
- Hugo Modules:通过公开或私有的 Git 仓库,与其他项目共享内容、资源、数据、翻译、主题、模板和配置。
- 部署:构建完成后,网站可以部署到主机,或推送到 Git 提供商以实现自动化构建和部署。
版本区分:Hugo 提供 standard、deploy、extended 以及 extended/deploy 四个变体。所有版本均包含核心功能。deploy 版本增加了直接部署到 Google Cloud Storage 存储桶、AWS S3 存储桶或 Azure Storage 容器的功能。extended 版本增加了用于将 Sass 转译为 CSS 的 LibSass 支持;README 指出,内置的 LibSass 在 v0.153.0 中已被弃用并将被移除,建议使用 Dart Sass 转译器作为不依赖版本的替代方案。
安装与构建:Hugo 可以通过预构建的二进制文件、包管理器或包仓库进行安装,支持 macOS、Linux、Windows 以及 DragonFly BSD、FreeBSD、NetBSD 和 OpenBSD。从源码构建需要 Git 和 Go 1.26.0 或更高版本。标准构建使用 CGO_ENABLED=0;extended 版本则需要 GCC 或 Clang 等 C 编译器,并设置 CGO_ENABLED=1 及 extended 标签。
支持与贡献:文档在独立的仓库中维护,社区论坛是提问和故障排除的主要场所,而非 issue 队列。贡献方式包括回答论坛问题、改进文档、监控 issue 队列、创建或改进主题以及修复 Bug;功能想法首先在论坛上讨论,若有兴趣,在提交 pull request 之前需先转化为提案。
许可协议:源代码许可详见仓库中的 LICENSE 文件。该项目以二进制或 WASM 形式捆绑了 libwebp (BSD-3-Clause)、KaTeX (MIT) 和 QuickJS。可以通过 hugo env --logLevel info 命令显示依赖列表。
评论
0 评分人数达到10人后显示
登录后参与讨论。