HexoBlog

hexo-theme-syutoi — Hexo Blog Template

By syutoi

Syutoi is a Hexo blog theme for writing and reading, rebuilding core pages with Nunjucks, TypeScript, and vanilla CSS. Current version 0.5.0, MIT licensed.

Explore the design

Compare the page layouts and mobile experience. Open any screenshot for a closer look.

3 previews
Desktop homepage1 / 3
Desktop captureTop of page

Actual screenshot captured by the server browser.

All pages & views 3

Screenshots show visual appearance; interactive behavior may differ.

Recorded 2026-10-01View source

What stands out

A quick read of the recorded project description.

01

A Hexo blog theme for writing and reading, retaining image headers, waves, image-text cards, and sidebar design

02

Rebuilds core pages with Nunjucks, TypeScript, and vanilla CSS

03

Does not load third-party JS by default; Pagefind search and Waline comments are disabled by default

04

Supports optional Markdown image attributes and hint blocks

05

Provides a complete documentation center covering installation, configuration, deployment, and migration

06

MIT licensed, allowing free use, modification, commercial use, and distribution

Template Details

Syutoi is a Hexo blog theme positioned for writing and reading. Inspired by hexo-theme-shoka, it retains design elements such as image headers, waves, image-text cards, and a sidebar, while rebuilding core pages with Nunjucks, TypeScript, and vanilla CSS. The current version is 0.5.0, adding a wood-toned visual style with pastoral illustrations, a demo documentation center, optional Markdown image attributes and hint blocks, and completing standalone Git installation and online acceptance.

The theme does not load third-party JS by default; Pagefind search and Waline comments are disabled by default, and Baidu Analytics can be enabled via analytics.baidu. Music and PJAX are not yet integrated. RSS/Atom/JSON Feed and Sitemap are generated via optional site plugins and are not required dependencies for the theme to run. Using the theme requires Node.js >=20.19.0, pnpm 9.0.4, and Hexo 8; theme options are placed in _config.syutoi.yml in the blog root directory.

The repository provides a complete documentation center covering installation, configuration, social links and icons, visit statistics, images and sizes, Markdown extensions, customization, deployment, basic writing, and migration instructions. Local development and preview are done via pnpm scripts; visit http://127.0.0.1:4000/examples/ to view examples. After modifying src/, you need to regenerate and commit the artifacts under source/js/ and source/css/.

The current mobile homepage LCP measured median is 3.013s, and optimization is ongoing. Demo/distribution and preparation for the official 1.0 release are still in progress. The code is MIT licensed, allowing free use, modification, commercial use, and distribution, but demo images, fonts, icons, and other third-party assets must be checked against their respective licenses.

HexoBlog

Is it right for your project?

Use Cases

  • Building a personal writing blog that needs image-text cards and a sidebar layout
  • Migrating from hexo-theme-shoka, referring to migration instructions to adjust old configurations and syntax
  • Enabling Baidu Analytics, Pagefind search, or Waline comments as needed in a Hexo blog
  • Organizing article content using Markdown image attributes, captions, lightboxes, and hint blocks
  • Building example/ via GitHub Actions and publishing to GitHub Pages as a demo site

Suitable For

  • Bloggers using Hexo 8 who want to focus on writing and reading
  • Sites that need visual elements such as image headers, waves, image-text cards, and a sidebar
  • Users who want no third-party JS by default and to enable search and comments on demand
  • Developers who need complete Chinese documentation for installation, configuration, and deployment

Getting started & customization

Use these recorded setup notes alongside the repository instructions for your chosen version.

  1. 1

    Requires Node.js >=20.19.0, pnpm 9.0.4, and Hexo 8.

  2. 2

    Theme options are placed in _config.syutoi.yml in the blog root directory.

  3. 3

    The committed JS/CSS in the repository can be used without a development build, but the theme's build-time dependencies still need to be installed.

  4. 4

    Local development and preview: in the repository root, run pnpm install --frozen-lockfile, pnpm lint, pnpm clean, pnpm typecheck, pnpm build, pnpm test, pnpm dev, then visit http://127.0.0.1:4000/examples/.

  5. 5

    After modifying src/, you need to regenerate and commit all changed artifacts under source/js/ and source/css/.

Read repository instructions

License & source material

Usage conditions & limitations

Free to use · keep license notice

This entry covers the free version under the MIT license in the public repository; the free scope is the code of this version and does not mean external services or third-party assets are free.

Must comply with when using

  • Free use, modification, commercial use, and distribution of this version's code are allowed.
  • When distributing copies or substantial portions of the code, retain the original author's copyright notice and the full MIT license notice.
  • The code is provided as is; warranties and limitations of liability are governed by the original license and applicable law.

Additional costs & items to verify

  • Using the theme requires meeting runtime environment requirements: Node.js 20.19.0 or higher, pnpm 9.0.4, and Hexo 8.
  • The committed JS/CSS in the repository can be used directly, but the theme's build-time dependencies must still be installed.
  • Pagefind search and Waline comments are disabled by default and need to be enabled manually.
  • Baidu Analytics requires configuration via analytics.baidu to enable and is an optional external analytics service.
  • RSS/Atom/JSON Feed and Sitemap depend on optional site plugins for generation and are not required by the theme.
  • External content embedded by the author may generate network requests.
  • After modifying src/, you need to regenerate and commit all changed artifacts under source/js/ and source/css/.
  • Demo images, fonts, icons, and other third-party assets must be checked against their respective licenses; they cannot be judged solely by the code's MIT license.
  • External services such as domains, hosting, databases, payments, or AI may incur additional charges.
View Original Text Basis

Permission is hereby granted, free of charge

Original License Text

需要 Node.js >=20.19.0、pnpm 9.0.4 和 Hexo 8。

Original README

无需开发构建即可使用仓库中已提交的 JS/CSS,但仍需安装主题的构建时依赖。

Original README

Pagefind 搜索与 Waline 评论默认关闭。

Original README

百度统计可通过 `analytics.baidu` 启用

Original README

RSS/Atom/JSON Feed 与 Sitemap 通过可选站点插件生成,不是主题运行的必需依赖

Original README

作者自行嵌入的外部内容可能产生网络请求。

Original README

修改 `src/` 后重新生成并提交 `source/js/` 与 `source/css/` 下所有变化的产物

Original README
https://github.com/syutoi/hexo-theme-syutoi/blob/main/LICENSEhttps://github.com/syutoi/hexo-theme-syutoi/blob/main/README.md

Compiled by DeepSeek based on repository license and README ·2026-10-01. Results only cover the materials read; dependencies, images, fonts, and subsequent term changes are subject to their respective original texts.

Project checks & description sources

Template Information

Source platforms
GitHub
Documentation and maintenance reference score
More documented · 83 / 100
Technologies
Hexo
Website type
Blog
How this score is calculated

Our heuristic uses license records (up to 30), a demo link (12), a preview (10), stars (15), recorded maintenance (15), description completeness (8), feature records (5) and classification data (5). It is not a code, security or performance test, or a Google score. A link does not establish tested functionality.

What to verify for this project

Repository update recorded
2026-09-26
Screenshot last checked
2026-10-01

A demo link is listed. Check it with your own content and viewport sizes; its presence does not confirm that forms, authentication or payments work.

The catalog identifies Hexo as the primary stack. Check the actual dependency manifest and lockfile for versions and hosting requirements. These notes use recorded metadata, not a code audit or a deployment test.

Use a selection guide →

How this description was prepared

AI-assisted description based on catalog records and repository material. Repository authors are not automatically the reviewers of this description.

Automatically checked against source and license rules; no manual editorial review.

Inspect the recorded source material

SHA-256: 44c46054688cbddaf7a483463e85df8f60201585a1610d73961eb6a29ece1c4b

2026-10-01T03:06:39.247Z

Source file / repository
# Hexo Theme Syutoi

![Hexo Theme Syutoi](./docs/images/Syutoi.png)

Syutoi 是一个面向写作与阅读的 Hexo 主题,灵感来自 [hexo-theme-shoka](https://github.com/amehime/hexo-theme-shoka) 主题。我们保留了图片页头、波浪、图文卡片和侧栏等设计,以 Nunjucks、TypeScript 和原生 CSS 重建了核心页面。

当前版本 **0.5.0**,新增木色视觉与田园配图、Demo 文档中心、可选 Markdown 图片属性和提示块,并完成独立 Git 安装及线上验收。当前移动首页 LCP 实测中位数 3.013s,优化仍在进行,详见 [性能基线](docs/validation/g5d.md)。Demo/分发与正式 1.0 发布准备仍按 [TODO](docs/TODO.md) 推进。首个 Syutoi 版本重新编号,不延续上游遗留的 `0.2.5`;版本差异见 [CHANGELOG](CHANGELOG.md)。上游来源与 MIT 许可证保留。

在线 Demo:<https://hexo.syutoi.com/>(由 GitHub Actions 构建 `example/` 并发布到 GitHub Pages)。

## 使用主题

需要 Node.js >=20.19.0、pnpm 9.0.4 和 Hexo 8。现有博客安装方式见 [快速开始](example/source/_posts/theme-docs/getting-started.md),主题选项放在博客根目录的 `_config.syutoi.yml`。无需开发构建即可使用仓库中已提交的 JS/CSS,但仍需安装主题的构建时依赖。

- [文档中心](example/source/_posts/theme-docs/index.md):按阅读顺序了解安装、配置与发布;本地 Demo 入口为 `/docs/`。
- [配置说明](example/source/_posts/theme-docs/configuration.md):主题字段、覆盖规则与分页。
- [社交链接与图标](example/source/_posts/theme-docs/social-links.md)、[访问统计](example/source/_posts/theme-docs/analytics.md):配置账号展示与访问统计。
- [图片与尺寸](example/source/_posts/theme-docs/images.md)、[Markdown 扩展](example/source/_posts/theme-docs/markdown-extensions.md):图片宽高、图注、灯箱和提示块。
- [自定义](example/source/_posts/theme-docs/customization.md):配置、设计变量、模板与源码构建。
- [部署](example/source/_posts/theme-docs/deployment.md):独立博客、仓库 Demo 与 GitHub Pages。
- [基础写作](example/source/_posts/theme-docs/writing.md):Front Matter、Markdown、图片与代码。
- [迁移说明](example/source/_posts/theme-docs/migration-from-shoka.md):旧配置与旧语法的兼容范围。
- [示例说明](docs/examples.md):阅读组件、长文和边界场景。
- [MVP 验收](docs/validation/mvp.md):实际证据与尚未验证的范围。

默认不加载第三方 JS;Pagefind 搜索与 Waline 评论默认关闭。百度统计可通过 `analytics.baidu` 启用;百度统计与社交 SVG 图标属于 v0.5.0 标签之后的改进。音乐、PJAX 尚未集成。作者自行嵌入的外部内容可能产生网络请求。RSS/Atom/JSON Feed 与 Sitemap 通过可选站点插件生成,不是主题运行的必需依赖;配置见 [订阅与站点地图](example/source/_posts/theme-docs/syndication.md)。

使用手册直接维护在 `example/source/_posts/theme-docs/`,导读页位于 `example/source/_posts/theme-docs/index.md`。导读与章节放在一起,使用原生 Markdown 和 Front Matter,示范主题的实际用法;根目录 `docs/` 保留开发与验收记录。

## 本地开发与预览

```bash
# 仓库根目录;nvm 用户先执行 nvm install 和 nvm use
pnpm install --frozen-lockfile
pnpm lint
pnpm clean
pnpm typecheck
pnpm build
pnpm test
pnpm dev
```

访问 <http://127.0.0.1:4000/examples/>。`pnpm dev --port 4001` 可更换端口;Ctrl+C 停止服务。`dev` 与 `build` 自动将 `example/themes/syutoi` 链接到当前主题,已有其他目录时不会覆盖。

修改 `src/` 后重新生成并提交 `source/js/` 与 `source/css/` 下所有变化的产物;`pnpm test` 需要已有示例构建,包含单元、隔离 Hexo、产物及 gzip 预算检查。浏览器/Lighthouse 属于可选验收工具,普通安装和构建无需 Puppeteer 或 Chrome。详细命令、CI 范围与工作流程见 [开发文档](docs/development.md),后续任务见 [TODO](docs/TODO.md)。

代码许可证见 [LICENSE](LICENSE);保留原作者署名。示例中的历史内容和原站链接用于来源记录及迁移对照,不作为当前功能说明。
Report a correction

Explore similar templates

Compare previews and descriptions within the same stack and category.