Shizuka is a minimal single-column Hugo blog theme by carmelolg whose core function is to turn Markdown posts into a distraction-free static blog with no sidebars and no JavaScript frameworks. The theme takes standard Hugo content from content/posts plus optional front-matter fields, and renders pages with clean typography, automatic reading-time estimates, and optional table-of-contents blocks. A live demo is published at https://carmelolg.github.io/shizuka/.
What is Shizuka?
Shizuka (静か) means “quiet” in Japanese, and the theme is styled after the subtle shibui aesthetic described in the README as “quiet elegance, nothing in excess.” It runs on Hugo Extended v0.100.0 or later and can be installed either as a Git submodule or as a Hugo Module. The included quick-start workflow is: add the repository as a submodule, set theme = "shizuka" in hugo.toml, create a Markdown post with title, date, draft, summary, tags, and categories in the front matter, then run hugo server for local preview or hugo --minify for production output in public/.
What makes Shizuka stand out?
- Distraction-free single-column layout — Pages have no sidebars by default; the home page can show an optional intro from content/_index.md above the post list.
- Built-in dark mode — The theme detects prefers-color-scheme and includes a manual toggle, with colors defined as CSS custom properties at the top of assets/css/main.css.
- Reading time and table of contents — Every post shows a reading-time estimate, and long posts can display a table of contents by setting toc: true in the post front matter.
- Taxonomies and archive — Posts support tags, categories, and series through the configured taxonomies, and the archive layout groups posts by year on a dedicated page.
- English and Italian i18n — English and Italian translation files are included; adding another language means copying i18n/en.toml to a new language code file and translating the values.
- Optional Google Analytics 4 — Setting a non-empty googleAnalyticsID parameter injects gtag.js into the page head; leaving the parameter blank disables tracking entirely.
- GDPR cookie consent banner — When googleAnalyticsID and enableCookieConsent are both set, a banner appears and Google Analytics stays off until the visitor clicks Accept; the visitor's choice is saved in localStorage for 365 days.
- RSS and responsive output — Home and section outputs are configured for HTML and RSS, and the layout uses mobile-first responsive CSS.
Who should use Shizuka?
- Writers and personal-blog authors — They get a reading-focused layout with clean typography, per-post summaries, and optional summaries under 160 characters for post listings.
- Hugo developers — They can add the theme in under five minutes through Git submodule or Hugo Module, then override layouts by copying files from the theme’s layouts directory into the site root; no Node.js toolchain is needed.
- Privacy-conscious publishers — They can run the optional Google Analytics 4 integration plus the built-in GDPR consent banner and use the included exampleSite privacy-policy template content/policy.md.
- Multilingual content teams — One site can be published in English or Italian by setting languageCode, or in any language by adding a translated i18n file.
Use cases
- Reading-focused blogs: publish essays and short notes in the single-column layout with reading time, tags, categories, and archive grouping.
- Italian-language posts: set languageCode = "it" to switch all built-in UI strings to Italian without writing templates.
- Compliant personal sites: enable the cookie consent banner and set privacyPolicyURL to an existing policy page so Google Analytics loading follows explicit visitor consent.
- Custom-theme experiments: change the theme’s color palette by editing the CSS custom properties in assets/css/main.css, including separate dark-mode values.
How does Shizuka work?
Shizuka is driven entirely by Hugo: the theme defines layouts for home, section, single posts, taxonomy, and archive pages, and reads Markdown from the content directory. To set up the special pages, create content/archive.md with layout: "archive", create content/about.md with a title, and add optional content/_index.md for a home-page introduction. Once hugo.toml points at the theme, any new Markdown file under content/posts becomes a blog post and can use the front-matter fields toc, summary, tags, categories, or draft. The theme names a cookie consent partial at layouts/partials/cookie-consent.html that can be customized per site.
FAQ
Is Shizuka free to use?
Shizuka is published under the CC-BY-4.0 license by carmelolg. You can reuse and modify the theme as long as you provide attribution in any redistribution; there is no commercial restriction stated.
Which Hugo version do I need?
The README requires Hugo Extended v0.100.0 or later for building a site with Shizuka. Hugo Extended is the edition with the Sass/SCSS compiler needed by the theme’s assets processing.
Does Shizuka have a table of contents?
Yes, built in. The table of contents is disabled by default; setting toc: true in a post’s front matter makes the theme render a linked contents block for that post.
Does Shizuka use heavy JavaScript?
No. The theme uses only vanilla JavaScript, according to the README, and includes no JavaScript frameworks. Dark-mode toggling and the cookie-consent banner are handled with plain JS.
Can I translate the theme myself?
Yes. English and Italian translations are built in. Copy i18n/en.toml to i18n/your-code.toml, translate the string values, then set languageCode to your-code in hugo.toml.








