A minimalist, fast, and responsive Hugo theme based on nostyleplease. It preserves the original’s simple, text-focused character while adding multilingual support, pages, taxonomies, image captions, galleries, and lightweight shortcodes.
- minimalist and responsive interface;
- color schemes:
auto,light,dark,matrix,bear, andtogether; - multilingual support for pages, posts, taxonomies, and RSS;
- language switcher showing only available translations;
- categories and tags;
- language-specific RSS feeds;
- configurable favicon;
- optional bordered table of contents;
- MathJax support;
- image and video captions with Markdown link support;
- responsive image galleries without JavaScript;
- highlighted content without additional global CSS;
- native Goldmark footnotes in page content;
- Hugo Pipes and CSS fingerprinting;
- no required Node.js dependencies.
Clone the repository or add it as a submodule under themes/somestyleplease, then set the theme in your Hugo configuration.
TOML
theme = "somestyleplease"YAML
theme: somestylepleaseExample content shipped with the theme uses draft = true. To render it locally, run:
hugo server --buildDraftsThe repository also includes a gallery-demo post showing galleries, captions, links in captions, and highlighted content.
Theme settings are configured under params.theme_config.
TOML
[params.theme_config]
appearance = "auto" # auto | light | dark | matrix | bear | together
date_format = "02.01.2006"
categories = true
tags = true
post_limit = 100
show_more_url = "posts"
favicon = "favicon.ico"YAML
params:
theme_config:
appearance: auto
date_format: "02.01.2006"
categories: true
tags: true
post_limit: 100
show_more_url: posts
favicon: favicon.icoYour project configuration takes precedence over the theme defaults.
Place the file in the site’s static directory:
static/favicon.ico
Then configure its filename:
[params.theme_config]
favicon = "favicon.ico"The theme uses standard Hugo front matter. The main supported fields are:
| Field | Type | Purpose |
|---|---|---|
title |
string | Page or post title |
date |
date | Publication date |
draft |
bool | Hide content from regular builds |
categories |
array | Post categories |
tags |
array | Post tags |
toc |
bool | Enable the table of contents |
tocBorder |
bool | Add a border to the table of contents |
mathjax |
bool | Enable MathJax on the page |
custom_js |
array | Load JS files from assets/js/ |
weight |
int | Page and menu ordering |
Example:
+++
title = "My post"
date = 2025-07-19T12:00:00+02:00
draft = false
categories = ["technology"]
tags = ["hugo", "markdown"]
toc = true
tocBorder = true
mathjax = false
+++Add footnotes to regular Markdown content using Goldmark’s native syntax:
This is text with a footnote[^1].
[^1]: Footnote content.Footnotes are not intercepted inside image captions. This keeps Hugo’s native and predictable footnote handling intact.
Use the optional image title to display a centered caption:
Captions can contain basic Markdown, including links:
")Images without a title are rendered without a caption. Alternative text remains separate from the caption and is used for accessibility.
Embed video using the same syntax as an image:
The theme also detects the webm, mp4, m4v, ogv, ogg, and mov extensions, so the alternative text can describe the recording:
Videos include controls, preload="metadata", and responsive sizing.
The gallery shortcode creates a responsive CSS Grid gallery without JavaScript:
{{< gallery label="Watch gallery" >}}



{{< /gallery >}}Captions and links in captions work the same way as they do for individual images. The gallery automatically adapts the number of columns to the available width.
The highlight shortcode surrounds an important fragment with a minimalist border similar to the table of contents:
{{< highlight >}}
This is an important note with **bold text** and a [link](https://gohugo.io/).
{{< /highlight >}}The highlight CSS is included directly in the shortcode, so it does not increase the global stylesheet when the feature is not used.
The details shortcode creates a collapsible HTML element:
{{< details summary="Show more" open="false" >}}
Hidden content with **Markdown**.
{{< /details >}}A video shortcode is also available for compatibility:
{{< video src="/attachment/example/video.webm" >}}For new content, the Markdown syntax above is recommended because it is shorter and uses the same image render hook.
On a page with mathjax = true, you can use the texi and texd shortcodes:
{{< texi "x^2 + y^2 = z^2" >}}When categories = true or tags = true, the theme generates category and tag pages. Term names are displayed in lowercase, and the homepage link has the same top spacing as it does in articles.
A post can have multiple categories and tags:
categories = ["watches", "technology"]
tags = ["hugo", "markdown"]The theme supports multiple languages for pages, posts, taxonomies, and RSS.
TOML
defaultContentLanguage = "en"
defaultContentLanguageInSubdir = true
[languages]
[languages.en]
locale = "en-US"
label = "English"
weight = 1
[languages.pl]
locale = "pl-PL"
label = "Polski"
weight = 2YAML
defaultContentLanguage: en
defaultContentLanguageInSubdir: true
languages:
en:
locale: en-US
label: English
weight: 1
pl:
locale: pl-PL
label: Polski
weight: 2Use the same basename with a language code suffix:
content/posts/my-post.en.md
content/posts/my-post.pl.md
content/pages/about.en.md
content/pages/about.pl.md
The language switcher shows only other available translations of the same resource. If no translation exists, no empty or unnecessary link is displayed.
Add i18n/<language>.yaml files, for example:
i18n/en.yaml
i18n/pl.yaml
The theme uses keys such as:
homepage.intro;homepage.moreintro;homepage.footer;general.back_home_text;general.categories;general.tags;categories.<category-slug>.
To avoid the /en/ prefix for the default language, set:
defaultContentLanguageInSubdir = falseHugo allows you to override theme files in the project directory. For example, a custom footer can be placed at:
layouts/partials/footer.html
Custom CSS and JavaScript files can be added under:
assets/css/
assets/js/
The theme uses Hugo Pipes, minification, and CSS fingerprinting. Node.js and npm are not required.
This theme is available under the MIT License. Bug reports and pull requests are welcome.
Some code comes from hanwenguo/hugo-theme-nostyleplease and wooseopkim/hugo-theme-nostyleplease. Some example content comes from this Jekyll theme.
