Fork of hugo anubis theme that adds more color contrast, some CSS and remove unethical social media
Add labels for social links
Work around with font size for pre, code
Add theme for previous/next post


browse  log 



You can also use your local clone with git send-email.

#Anubis Theme for Hugo License: MIT Donate

Anubis is a simple minimalist theme for Hugo blog engine. This is a fork of the theme for my personal use.

Anubis Screenshot


  • Dark mode (automatic / by switcher)
  • Pagination
  • Tags/Categories support
  • Archive
  • Open Graph and Twitter Cards support
  • Mobile support
  • Social icons
  • Utteranc.es
  • RSS feeds
  • Hiding posts from the RSS feed
  • Translations (en, ru, fr, pl)
  • Custom CSS/JS
  • Multilingual mode
  • Robots.txt
  • Favorite posts
  • Pagination on post single page
  • Optional "Read more" link
  • webmentions


You need to install an extended version of Hugo to run this theme.

Inside the folder of your Hugo site run:

$ git submodule add https://github.com/mitrichius/hugo-theme-anubis.git themes/anubis

For more information read the official setup guide of Hugo.

#Getting started

After installing the theme successfully it requires a just a few more steps to get your site running.

#Update config file

If you have toml config (which is by default), you should rename it to config.yaml or adapt this config for toml syntax.

Example of config.yaml:

languageCode: "en-us"
baseUrl: ""
title: "Anubis"
theme: "anubis"
paginate: 10
enableRobotsTXT: true

  - identifier: archive
    name: Archive
    title: Archive
    url: /posts/
    weight: 0

  author: "John Doe"
  email: mail@example.org # used for microformats
  avatar: "/images/me.png" # used for microformats
  description: ""
  # Uncomment if you need this
  # images:
  #   - images/og-featured.png # relative path to "static" directory
  # customCSS:
  #   - css/my.css # relative path to "assets" directory (don't use main.css filename)
  # customJS:
  #   - js/main.js # relative path to "assets" directory
  dateFormat: "2006-01-02"
  paginationSinglePost: true
  style: light-without-switcher
  readMore: false
  disableSummary: false
  # utteranc.es support
  utterancesRepo: ""  # mandatory
  utterancesTheme: "" # optional
  utterancesIssue: "" # optional
  utterancesLabel: "" # optional
    url: https://yourdomain.com/webemntions/receive
    login: hugo-theme-anubis
    pingback: true
  - id: github
    name: gohugoio
#  - id: hugo
#    url: "https://gohugo.io/"
#    icon: "hugo"

      unsafe: true # enable raw HTML in Markdown

#Check your site

In order to see your site in action, run Hugo's built-in local server.

$ hugo server

Now enter localhost:1313 in the address bar of your browser.

#Feature Settings

#Dark Mode

Customize via style param in params section of config. Options:

  • light-without-switcher - light theme, without switcher, JS-free (by default)
  • dark-without-switcher - dark theme, without switcher, JS-free
  • auto-without-switcher - theme based on user system settings, without switcher, JS-free
  • light - light theme by default, can be switched by user to dark theme and back. Theme settings are saved for user
  • dark - dark theme by default, can be switched by user to light theme and back. Theme settings are saved for user
  • auto - theme based on user system settings by default, can be switched by user to dark/light theme. Theme settings are saved for user

#Social icons

#Predefined icons

To add icon from predefined list, add to params.social config:

  • id of social network
  • name for placeholder (usually it's your nickname or login)

Predefined list:

  • email
  • patreon
  • github
  • mastodon
  • pleroma
  • matrix
  • liberapay
  • sourcehut


  - id: github
    name: gohugoio

Config like this generate github icon with "https://github.com/gohugoio" url.

For Fediverse (Mastodon-style) instances, you would need to supply the instance's domain as URL.

- id: mastodon
  name: huy_ngo
  instance: fosstodon.org
  url: "https://fosstodon.org/@%s"
#Custom icons

To add custom icon, add to params.social config:

  • id of social network/site
  • full url to your network/site Also you need to create directory static/fa-icons and add svg icon of your network/site with name equals to id from config.


  - id: google
    url: "https://www.google.com/search?q=I'm+lucky"

Icon should be "static/fa-icons/google.svg"

If you want font awesome icons, download "Font Awesome For Desktop" and open svg directory.

#Multilingual mode

Check config/example usage in exampleSiteMultilingual directory and documentation on Hugo site.


Based on environment.
For production — allow all, for other — disallow all.

#Favorite posts

To mark posts as favorite just add favorite: true in post's front matter. It adds a "★" icon nearby post's title.

#Hiding posts from RSS

To hide a post from the RSS feed, just add disable_feed: true to its front matter.

#Pagination on post single page

Enabled by paginationSinglePost param in params section of config.


To provide webmention support you can either specify your webmention.io username with login: webmentionusername or specify a link to your custom webmention endpoint with url: https://yourdomain.com/webemntions/receive. If you use webmention.io you can also enable pingback with pingback: true


If you find a bug or have an idea for a feature, feel free to write an issue or make a PR.


See issues.



© Dmitry Kolosov 2020

© Ngô Ngọc Đức Huy 2021