Files
tsuki/README.md
T
tiennm99 afc5d25885 feat: initial theme scaffold
- Repo metadata: theme.toml, README, Apache-2.0 license
- Hugo defaults: vi language, post permalinks, taxonomies, paginate, TOC config
- exampleSite skeleton with themesDir wiring
- CI: Hugo build + Pagefind index + Pages deploy
- Pagefind devDependency in package.json (Dependabot weekly)
- vi i18n strings, default archetype
- Empty layouts/_partials/_markup/_shortcodes directories ready for Phase 3
2026-05-07 20:27:07 +07:00

2.3 KiB

tsuki (月)

build license Hugo

A Hugo blog + personal portfolio theme. The homepage is the portfolio — bio, featured projects, recent posts. Posts live at /post/. Vietnamese-first typography, View Transitions on navigation, Pagefind search, Giscus comments.

月 (tsuki): the moon. Quiet, observed, returned to. Companion to bonsai in the same naming family.

Live demo (after first deploy)

Status

🚧 Under construction — initial scaffold. See the implementation plan for what's coming.

Features

  • Blog — posts, tags, categories, year-grouped archive
  • Personal portfolio on the homepage — driven by data/profile.yaml + data/projects.yaml, no separate /portfolio section
  • SearchPagefind, zero-runtime, indexed at build time
  • CommentsGiscus (GitHub Discussions)
  • Vietnamese-first — diacritic-safe typography, native vi date formats, Be Vietnam Pro fallback
  • Dark modeprefers-color-scheme + persistent toggle, no flash of wrong theme
  • View Transitions API — smooth same-document navigation in supporting browsers
  • No build step — pure Hugo + browser ES modules. No SCSS, no TypeScript, no bundler in the theme.
  • Light — target ≤ 15 KB CSS gzipped, ≤ 8 KB JS gzipped (excluding Pagefind UI)

Quick start

As a git submodule

git submodule add https://github.com/tiennm99/tsuki.git themes/tsuki

Add to your site's hugo.yaml:

theme: tsuki

As a Hugo Module

hugo mod init github.com/<you>/<your-site>
hugo mod get github.com/tiennm99/tsuki

Then add to hugo.yaml:

module:
  imports:
    - path: github.com/tiennm99/tsuki

Configuration

Documented in docs/config.md (coming soon). For now, see exampleSite/hugo.yaml and exampleSite/data/.

License

Apache-2.0