Releases: gohugo-ananke/ananke
Release list
Release v2.19.0
Release v2.18.0
2.18.0 (2026-06-07)
Features
- add layout hooks head/body-start/end, header/main/content/footer-before/after (66247c8)
- add layout hooks head/body-start/end, header/main/content/footer-before/after (cc579e8)
- add since shortcode for release badges (#1018) (fb71d10)
- add since shortcode for release badges (#1018) (ddfc42c)
- copy-to-clipboard buttons for code blocks (#986) (1d96734), closes #985
- copy-to-clipboard buttons for code blocks (#986) (8c3143a), closes #985
- make section link above article title clickable and configurable (d343f0b)
- show categories on posts (#973) (52ec6cd), closes #620 gohugo-ananke/documentation#18
- show categories on posts (#973) (c806c1c), closes #620 gohugo-ananke/documentation#18
Bug Fixes
- allow images in list summary cards (#971) (713bb6d), closes gohugo-ananke/documentation#13
- allow images in list summary cards (#971) (c88d2fc), closes gohugo-ananke/documentation#13
- font size definition for in-paragraph code (502c676)
- font size definition for in-paragraph code (da07193)
- generate responsive hero background images (#970) (9570264), closes #362 gohugo-ananke/documentation#14 #362
- generate responsive hero background images (#970) (7abd905), closes #362 gohugo-ananke/documentation#14 #362 #540
- make header height configurable (#972) (634cc09), closes #504 gohugo-ananke/documentation#20
- make header height configurable (#972) (de31c71), closes #504 gohugo-ananke/documentation#20
Build
- deps: update dependencies (3395d1f)
- fix: proper discussion category for GH release (2b51bf7)
- fix: proper discussion category for GH release (0a0bc21)
- vscode: update workspace configuration (90a7775)
Documentation
Tests
Release v2.17.1
2.17.1 (2026-06-06)
Bug Fixes
- apply configured social colours on hover for follow and share (#861) (#979) (237551f)
- test local working tree in quickstart test (#938) (#978) (d545fdf)
Build
- deps-dev: bump @biomejs/biome from 2.4.15 to 2.4.16 (#977) (ccbcc32)
- deps-dev: bump @types/node from 25.8.0 to 25.9.1 (#976) (8743905)
- deps-dev: bump lint-staged from 17.0.4 to 17.0.5 (#975) (447ede2)
- deps: bump postcss from 8.5.14 to 8.5.15 (#974) (7cd8756)
Chores
Release v2.17.0
This release brings Hooks and Filters to Ananke. That's all. And some smaller fixes.
2.17.0 (2026-05-17)
Features
Bug Fixes
- remove deprecated partials (9dc44d5)
- remove external link indicator from social icons (1a185ea)
- remove font size from code highlighting (399075e)
- remove stray overflow from code highlighting (09d711c)
- rename theme styles from main.css to theme.css (918148e)
- slightly larger font size in code blocks (9cac210)
- support images array for featured image (#967) (ad43367), closes gohugo-ananke/documentation#10 #77
Build
- config: update workspace configuration (bcc90b5)
- fix: create a release on github when publishing a new release (d72fdad)
- fix: create discussion on release (9a5cadd)
CI
- fix: do not check the whole code base on TS changes (998b060)
v2.16.0
Release Notes
BREAKING CHANGE: Ananke is now using the latest css.Build functionality of Hugo. This means that the old SASS/SCSS pipeline is removed and you need to update your build process if you were relying on it.
Configuration Changes
custom_cssmoved toananke.custom_css.custom_cssexpects a list of paths to CSS files inassetsand/or HTML files inlayouts/_partials.
Example:
[params]
custom_css = ["ananke/css/custom.css", "custom-css-partial.html"] # old, deprecated
[params.ananke]
# looks for custom.css in `assets/ananke/css` and for custom-css-partial.html in `layouts/_partials`
custom_css = ["ananke/css/custom.css", "custom-css-partial.html"]SASS/SCSS changes
If you don't use SASS/SCSS then you can ignore this section.
Ananke itself is NOT processing any Sass/SCSS files. This means we can rely on the standard Hugo CSS pipeline and remove the dependency on Hugo Extended. This also means that you can use any CSS preprocessor you like, as long as you place the output in assets/ananke/css/ or load it as a separate partial in our pipeline.
If you are using SASS/SCSS then put something along the lines of this in a partial inside of layouts/_partials/:
{{ $opts := dict "enableSourceMap" true }}
{{ return resources.Get "sass/main.scss" | css.Sass $opts }}Make sure that the partial returns the processed CSS, NOT the SASS source. Your original SASS file in the example above is located at assets/sass/main.scss. You also MUST install the Extended Hugo version and have the sass binary available in your system for this to work. It is NOT Anankes task to help you with that, please refer to the Hugo Community if you need help setting up SASS to work with Hugo.
Development vs Production
- Source maps are linked in development and disabled outside development.
- Production output gets fingerprinted.
hugo serverruns the development pipeline by design.
Further Notes
- Custom CSS that is found in
assets/ananke/css/is processed by Hugo and emitted as a single theme file. This allows you to write your own custom CSS and have it included in the build without needing to change any of the Ananke templates. - Custom CSS that is not found in
assets/ananke/css/is emitted as a separate<link>AFTER the Ananke theme CSS. This allows you to override Ananke styles with your own custom CSS. - The resulting theme file is now
theme.cssinstead ofmain.css. This is a cosmetic change and only breaking your build if you were assuming the name somewhere in your system. - Any other post processing? That should work the same way you would add SASS to the pipeline: Add your processor as a partial and add it to the custom CSS pipeline.
- If you
@imported font files in your previous setup from thestaticfolder, you need to move them now into theassetsfolder and import them from there. Having those files in thestaticfolder will lead tojs.Builderrors when processing the CSS.
Further Reading
Requirements
- Hugo v0.161+
Changelog
2.16.0 (2026-05-16)
Features
- rework stylesheet pipeline (f78134c)
Build
- deps: update bundled Tachyons from 4.9.1 to 4.12.0 (433ef8f)
- fix: run test only on main branch push hook (148aa95)
- fix: update version numbers and fix release setup (29f0f4d)
Full Changelog: v2.15.0...v2.16.0
v2.15.0
BREAKING CHANGE: This release changes the icon set we are using for social media icons. More and more icon sets are removing their icons for social media platforms due to the legal issues around the usage rights ⇗. Ananke switched to using Simple Icons which is a free and open source icon set that is licensed under the CC0 License. This means that we can continue to use these icons without any legal issues. However, this also means that some icons may look different than before and some may be missing. If you are missing an icon that you need, please open a discussion and we will guide you to add them to your site.
A couple of icons have been added to the theme, but we will cut them down too in the near future. The preferred way to add an icon is for you to download and add them to your collection. The theme itself will maintain all icons that are mentioned in the documentation and cookbook section for convenience.
Adding new icons
- find the icon you want to add on https://simpleicons.org/
- download the SVG file for that icon
- copy it into
/assets/ananke/socials/ - use the icon name as key in your configuration (if the files called
mastodon.svgyou usemastodonas key)
[ananke.social.follow]
networks = ["mastodon"]
[ananke.social.mastodon]
profilelink = "https://mastodon.social/@ananke_theme"
username = "ananke_theme"Further Reading
- Social media network configuration in Ananke Documentation
- https://github.com/simple-icons/simple-icons/tree/develop/icons
- https://simpleicons.org/
- https://lucide.dev/brand-logo-statement
Changelog:
2.15.0 (2026-05-15)
Features
- add simple icons and maintenance script (f6fa927)
Build
- fix: remove improper cooldown config for GH actions (079b757)
- fix: smaller fixes to the release configuration (0672476)
- fix: update release setup (229588b)
Chores
- release: v2.14.0 (6a05f5e)
Full Changelog: v2.13.3...v2.15.0
v2.13.3 (and 2 and 1 too)
This was supposed to be "just" a quick maintenance release to get a couple of branch rules working and then grew into a couple of "somehow this should work" releases.
2.13.3 (2026-05-15)
Build
- fix: proper release key attribution (59b44f2)
2.13.2 (2026-05-15)
Build
- fix: proper release key attribution (db5561d)
2.13.1 (2026-05-15)
Build
- deps-dev: bump @release-it/conventional-changelog from 10.0.6 to 11.0.0 (#953) (c3ada3f)
- deps-dev: bump release-it from 19.2.4 to 20.0.1 (#954) (50a4ce9)
- deps: bump actions/checkout from 4 to 6 (#945) (5d40ea3)
- deps: bump actions/setup-node from 4 to 6 (#946) (dc0a822)
- deps: bump postcss from 8.5.10 to 8.5.13 (#955) (ed5f168)
- deps: bump the npm_and_yarn group across 1 directory with 2 updates (#956) (09a1dea)
- deps: update dependencies (9347892)
- fix: always use latest node version (17401b9)
- fix: dependabot must pull agains development branch (036acd7)
- rework release configuration (2b6c1fe)
Chores
CI
- fix: allow quickstart workflow to run on request (a1dd0f6)
- fix: lint only staged markdown files (60eb57d)
- update branch setup/rules and CONTRIBUTING.md (c336f54)
Documentation
- add AI contributor guide to CONTRIBUTING.md (a819d1e)
- ai: add DESIGN.md with initial setup (d262f3a)
- ai: add issue analysis prompt (437d60c)
- ai: fix test script prompt (d569659)
- ai: update issue analysis prompt with documentation instructions (c5c37be)
- fix: update links to documentation repository (feb14b2)
- readme: link to deployed documentation (#959) (f63ea20)
v2.13.0
BREAKING CHANGE: Repository Migration
This interim release bundles all fixes since the previous version.
The primary reason for publishing now is the migration of the theme repository to a dedicated GitHub organisation. During this transition, some links may temporarily break, and this release helps ensure a smoother update path before the next major version.
Ananke moved to its own organisation on April 23, 2026. Please update your references from github.com/theNewDynamic/gohugo-theme-ananke to github.com/gohugo-ananke/ananke. We are currently updating documentation and links across all repositories. In the meantime, both URLs will continue to function for links, cloning, and submodule usage.
Updating your setup
For Hugo Modules
Search and replace all instances of github.com/theNewDynamic/gohugo-theme-ananke/v2 with github.com/gohugo-ananke/ananke/v2 in your site configuration, then run hugo mod tidy to refresh dependencies.
For Git Submodules
Update the remote URL of your existing submodule:
cd path/to/your/repo/themes/ananke # adjust path as needed, keep 'themes/ananke'
git remote set-url origin https://github.com/gohugo-ananke/ananke.gitNext, open .gitmodules in the root of your repository and replace all instances of theNewDynamic/gohugo-theme-ananke with gohugo-ananke/ananke.
Finally, run:
git submodule syncTroubleshooting
If you are using Hugo Modules and encounter issues after updating, ensure that your go.mod file reflects the new module path and go.sum does not contain stale entries. Running hugo mod tidy should resolve most issues by refreshing your dependencies. DO NOT forget to add v2 to the module path. This is a requirement of Go Modules to differentiate major versions.
If you are experiencing issues with Git submodules, double-check that the remote URL has been updated correctly and that .gitmodules reflects the new path. Running git submodule sync is crucial to ensure that your local repository is in sync with the updated configuration.
git -C themes/ananke remote get-url origin <-- should return the new URL or SSH path, if not, set it with the next command
git -C themes/ananke remote set-url origin https://github.com/gohugo-ananke/ananke.gitQuestions or issues?
Please use GitHub Discussions to get in touch.
What's Changed
- Add Welsh i18n translation file (cy.toml) by @glanyrafon01 in #842
- Fix Hungarian spelling of e-mail address by @MegaBrutal in #845
- build(deps-dev): bump @biomejs/biome from 1.9.4 to 2.0.6 by @dependabot[bot] in #855
- build(deps): bump postcss from 8.5.3 to 8.5.6 by @dependabot[bot] in #856
- fix(theme): center post body horizontally if there is no toc nor related blocks by @ramiro in #784
- chore(config): add coderabbit configuration by @davidsneighbour in #894
- build(deps): update dependencies by @davidsneighbour in #895
- fix: add alignment option to home layout by @davidsneighbour in #896
- docs: add documentation pages by @davidsneighbour in #897
- fix: remove unnecessary vertical space with disabled comments by @davidsneighbour in #898
- fix: proper partial command for disqus template by @davidsneighbour in #900
- docs(fix): remove kitchensink by @davidsneighbour in #901
- chore: remove outdated package.hugo.json by @davidsneighbour in #902
- chore: remove release:minor script by @davidsneighbour in #903
- feat: add dynamic identifiers to body and article classes per page by @NITHINSPACETIME in #887
- fix: various documentation fixes by @davidsneighbour in #904
- fix: various documentation fixes by @davidsneighbour in #906
- fix: address deprecations in language API by @jmooring in #933
- chore: remove docs submodule by @davidsneighbour in #943
New Contributors
- @glanyrafon01 made their first contribution in #842
- @MegaBrutal made their first contribution in #845
- @NITHINSPACETIME made their first contribution in #887
Full Changelog: v2.12.1...v2.13.0
Bugfix release
A couple of smaller bugfixes and cleanups.
2.12.1 (2025-05-13)
Documentation
- update README.md (a001981)
Theme
- fix: hyperlink text color on home different from other pages (cd83033)
- fix: hyperlink text color on home different from other pages (on more layouts) (c789473)
- fix: replace username only when given (1027ebf), closes #843
- fix: use html.dir attribute configured in language setup (92ee7ad)
Refactors
Build System
- deps-dev: bump @davidsneighbour/markdownlint-config from 2025.0.1 to 2025.0.2 (#824) (348b858), closes #1795 #1794 #1793 #1777
- deps-dev: bump @davidsneighbour/release-config from 2025.0.1 to 2025.0.2 (#825) (3f0b2aa)
- deps-dev: bump @davidsneighbour/tools from 2025.0.1 to 2025.0.2 (#828) (6ed950b), closes #1795 #1794 #1793 #1777
- deps: bump postcss from 8.5.1 to 8.5.3 (#826) (f6facde), closes #2016 #2012
- deps: bump postcss-preset-env from 10.1.3 to 10.1.5 (#827) (3754523), closes /github.com/csstools/postcss-plugins/tree/main/plugins/postcss-logical/CHANGELOG.md#810 /github.com/csstools/postcss-plugins/tree/main/packages/color-helpers/CHANGELOG.md#502 /github.com/csstools/postcss-plugins/tree/main/packages/css-calc/CHANGELOG.md#212 /github.com/csstools/postcss-plugins/tree/main/packages/css-color-parser/CHANGELOG.md#308 /github.com/csstools/postcss-plugins/tree/main/plugins/postcss-initial/CHANGELOG.md#201
- deps: update dependencies (7e80c50)
- deps: update dependencies (b96a6dd)
- fix: remove exampleSite from setup (7a7de28)
Full Changelog: v2.12.0...v2.12.1
v2.12.0
This release fixes some messes with the social media integrations and the way main sections are evaluated. Add some refactoring and cleanup and you have a new release.
Breaking Changes
-
Module Integration: This was added in one of the previous releases, but lead to issues and misunderstandings. The way modules are handled in Golang (and GoHugo) is NOT only the path to the github repository, but also a version string, that can be left out if the major version is 0 or 1. Because this themes major version is 2 that leads to two effects.
Using
github.com/theNewDynamic/gohugo-theme-anankein your config file will lead to GoHugo using the latest HEAD of the repository, which is not recommended. You will receive every single latest commit on update, which might and has broken the theme.Using
github.com/theNewDynamic/gohugo-theme-ananke/v2will lead to GoHugo using the latest release of the repository, which is recommended. You will receive only the latest release on update, which should be stable.If you are using the GoHugo Modules way to integrate the theme, then please update to the latter method. If you are using the submodule way... well... this is a completely different story. It's not versioned, but it also only updates on manual request (for instance via
git pull && git checkout v2.10.3inside of the theme directory). -
Index page: the way main sections were evaluated was unclear and probably changed much from the original design in GoHugo. This has been fixed and the main sections are now evaluated in a more consistent way. This might affect what is shown on your website, so open a discussion if you see something wrong and try to explain exactly what you expected to see in sense of included posts and order of those posts.
The old way did this: check all configured main sections (or post, if nothing is set) > range through the section and display the first n+m posts (n = number of full previews, m = number of title previews only).
The new way does this: load all posts in the main sections > range through the collection and display the first n+m posts (n = number of full previews, m = number of title previews only).
Basically, the old way took every single section you configured and displayed them separate, the new way takes all posts from all sections and displays them in one list. This is more consistent and should be more predictable for you as a user. It's also the way it was intended to work from the beginning according to the documentation.
-
Social Media Icons: creating new networks had to be changed to a more flexible way.
# old way [[ananke.social.networks]] slug = "linkedin" ... # new way [ananke.social.networks.linkedin] slug = "linkedin"
Full Changelog: v2.11.3...v2.12.0