The official documentation site for Ananke, the flexible, production-ready starter theme for Hugo.
This site is itself built with Ananke, so it doubles as a living example of the theme in use.
- Live site: ananke-documentation.netlify.app
- Theme repository: github.com/gohugo-ananke/ananke
- Theme demo: ananke-theme.netlify.app
This repository contains only the documentation content and the site that renders it. The theme
source (layouts, partials, assets, i18n) lives in the separate
gohugo-ananke/ananke repository and is pulled in as a
Hugo Module.
content/ # all documentation pages (Markdown)
installation/ # install as Hugo Module or git submodule
getting-started.md
configuration/ # site/params configuration (general, SEO, social…)
content/ # content & front-matter features
customisation/ # colours, comments, hero, styles
hooks-and-filters/# the theme's hooks & filters system
cookbook/ # copy-paste recipes
information/ # contributors, meta
config/ # Hugo configuration
_default/ # production config (uses the published ananke module)
development/ # local config (replaces the module with ../ananke)
assets/ # docs-only CSS, fonts (the theme provides its own)
layouts/ # docs-only overrides (e.g. the `since` shortcode)
data/contributors/ # all-contributors source data
scripts/ # maintenance scripts
- Hugo (extended) — the version pinned in
netlify.toml(0.161.1at time of writing). Check yours withhugo version. The theme requires at least the version in the theme'sconfig/_default/module.toml. - Go — required by Hugo Modules to resolve the theme dependency.
- Node.js — only needed for the linting/maintenance scripts (
npm install).
There are two modes, depending on whether you want to render against the published theme or your local theme checkout.
hugo serverThis uses config/_default/ and pulls the released github.com/gohugo-ananke/ananke/v2 module.
If you have the theme checked out as a sibling directory (../ananke), build with the
development environment. config/development/module.toml
replaces the published module with your local working tree:
replacements = "github.com/gohugo-ananke/ananke/v2 -> ../../ananke"hugo server --environment developmentNow any edit you make in ../ananke is reflected live in the docs site — ideal for verifying a
theme change against real content.
Note
The relative path ../../ananke is resolved from the module config, so the theme repo must sit
next to this one (some-parent/ananke and some-parent/documentation).
Netlify builds the site with:
hugo --gc --minifySee netlify.toml for the per-context build commands (production, deploy preview,
branch deploy).
Documentation contributions are very welcome. Please read CONTRIBUTING.md for the page style guide, branch/PR workflow, and linting requirements before opening a pull request.
Quick checks before pushing:
npm install # first time only
npm run lint:markdown # markdownlint
npm run lint:links # lychee (run `hugo server` first; checks http://localhost:1313)Documentation content is licensed under the terms in LICENSE.md.