Complete, copy-paste-ready site configurations you can use as a starting point.
Each example uses the current github.com/gohugo-ananke/ananke/v2 module path
and the [ananke] parameter namespace.
Hugo Theme Ananke
Introduction
- Installation as a Hugo Module (recommended)
- Installation as Git Submodule
- Upgrading from theNewDynamic to gohugo-ananke
Configuration
- Configuration Reference
- Analytics
- Header and Hero
- Homepage
- Menus
- Multilingual and i18n
- robots.txt and Environments
- General Configuration
- SEO
- Social Media Networks
Content
- Content Types and Archetypes
- Images
- Summaries and Reading Time
- Taxonomies
- Calculate and show reading time
- Frontmatter
- General
Shortcodes
Customization
Examples
Contributing
Hooks & Filters
Cookbook
Information
Minimal Blog
A small blog: a homepage that lists recent posts, an about page, and a posts section.
File tree #
example-site/
├── config/
│ └── _default/
│ ├── hugo.toml
│ ├── module.toml
│ ├── menus.toml
│ └── params.toml
└── content/
├── _index.md
├── about.md
└── posts/
└── first-post.mdConfiguration #
# config/_default/hugo.toml
baseURL = "https://example.com/"
languageCode = "en-gb"
title = "My Minimal Blog"
enableRobotsTXT = true
[taxonomies]
tag = "tags"
category = "categories"# config/_default/module.toml
[[imports]]
path = "github.com/gohugo-ananke/ananke/v2"# config/_default/menus.toml
[[main]]
name = "Home"
pageRef = "/"
weight = 10
[[main]]
name = "Posts"
pageRef = "/posts/"
weight = 20
[[main]]
name = "About"
pageRef = "/about/"
weight = 30# config/_default/params.toml
[params]
mainSections = ["posts"]
read_more_copy = "Read more"
show_reading_time = true
[ananke]
show_recent_posts = trueSample content #
+++
title = "My Minimal Blog"
featured_image = "/images/home.jpg"
+++
Welcome — this is the homepage introduction. Recent posts appear below.+++
title = "About"
+++
A few words about me and this blog.+++
title = "First post"
date = 2026-06-06T10:00:00+07:00
description = "The very first post on this blog."
tags = ["hugo", "ananke"]
+++
Hello world — this is my first post.What it looks like #
The homepage shows the introduction text and a list of recent posts (newest
first). The header uses /images/home.jpg as a hero, or a black background if
the image is absent. Each post shows its reading time.
Multilingual Site
A two-language site (English and German) with side-by-side content and translated menus.
File tree #
example-site/
├── config/
│ └── _default/
│ ├── hugo.toml
│ ├── module.toml
│ ├── languages.toml
│ ├── menus.toml
│ └── params.toml
└── content/
├── _index.md
├── _index.de.md
├── about.md
└── about.de.mdConfiguration #
# config/_default/hugo.toml
baseURL = "https://example.com/"
title = "Example site"
enableRobotsTXT = true
defaultContentLanguage = "en"# config/_default/module.toml
[[imports]]
path = "github.com/gohugo-ananke/ananke/v2"# config/_default/languages.toml
[en]
languageName = "English"
languageCode = "en-gb"
weight = 1
title = "Example site"
[de]
languageName = "Deutsch"
languageCode = "de-de"
weight = 2
title = "Beispielseite"# config/_default/menus.toml
[[en.main]]
name = "About"
pageRef = "/about/"
weight = 10
[[de.main]]
name = "Über uns"
pageRef = "/about/"
weight = 10# config/_default/params.toml
[ananke]
show_recent_posts = falseSample content #
+++
title = "Welcome"
+++
This is the English homepage.+++
title = "Willkommen"
+++
Das ist die deutsche Startseite.The about page is translated the same way: content/about.md and
content/about.de.md.
No-blog Static Site
A simple brochure site with a homepage and a few standalone pages — no blog or post list.
File tree #
example-site/
├── config/
│ └── _default/
│ ├── hugo.toml
│ ├── module.toml
│ ├── menus.toml
│ └── params.toml
└── content/
├── _index.md
├── about.md
└── services.mdConfiguration #
# config/_default/hugo.toml
baseURL = "https://example.com/"
languageCode = "en-gb"
title = "Example Studio"
enableRobotsTXT = true# config/_default/module.toml
[[imports]]
path = "github.com/gohugo-ananke/ananke/v2"# config/_default/menus.toml
[[main]]
name = "Home"
pageRef = "/"
weight = 10
[[main]]
name = "Services"
pageRef = "/services/"
weight = 20
[[main]]
name = "About"
pageRef = "/about/"
weight = 30# config/_default/params.toml
[ananke]
show_recent_posts = falseSample content #
+++
title = "Example Studio"
featured_image = "/images/studio.jpg"
+++
We design and build small, fast websites. Get in touch to start a project.+++
title = "Services"
+++
What we offer and how we work.+++
title = "About"
+++
Who we are.What it looks like #
The homepage shows only the introduction and hero image — no post list, because
show_recent_posts is false. The menu links the standalone pages.