Privacy in mind - best practises (config, themes etc.)


I’ve been really impressed by Hugo project! However I’d like to create website / blog with privacy and openness in mind. I understand that analytics tools are crucial in businesses but they are not obligatory for personal projects.

Don’t get me wrong I don’t want to change whoooole project to be strictly privacy respecting,
I’d like to collect in 1st post all the information to make solid “how-to” for strict open-source and privacy users :wink:


  • No centralized dependencies e.g. fonts, styles (google fonts no, fontlibrary yes)
  • No cookies (tracking-one free would be enough)
  • No centralized analytics (open/decentralized/selfhosted yes)
  • No closed-source social integrations (e.g. fb no, mastodon yes)
  • No other proprietary APIs (but could be e.g. syntax highlight by highlight.js)
  • [For basic projects] Noscript compatible

Important thing is not to collect user metadata on server or send user metadata to proprietary third-parties.



(I’m new I can’t post more than 2 links, I’ll do it later)

  • Purismo
  • Bare min
  • Indigo
  • Color your world

Forum Threads

(Those are threads titles on this forum)

  • Gstatic privacy concerns
  • Extending privacy configs
  • Themes without third party requests


  • TODO…

I’d also propose to make themes tag on official website:

  • privacy
  • static (with no external dependencies)
  • decentralized
  • noscript

Please help me with searching themes, validating them, finding articles, writing explanations etc.

Thanks in advance :slight_smile:

All of these will not “activate” if you don’t add the necessary id/value for each param in your config file.

For example:

  • Analytics will not be built if you leave the related param empty (or remove it).
  • Social integrations, same thing, it won’t show up / work without setting it first in your config, leave it empty if you don’t want it.

It doesn’t matter if there is an analytics or facebook code in a theme, if you did not set it in your config file, those code will not show up. If ever the code still shows up, then there is a missing if/with statement in the theme. In this case, either report a bug or submit a PR to the relevant theme git or edit it manually for your specific project.

For “centralized dependencies” or CDN resources, that depends on the theme itself. You can talk to each theme developer to add an option choose non-CDN use of the fonts they are using if you want but that is on them. Your best course of action is to simply remove those manually.

If you really want something pure, then in the end you still have to edit each theme you want to use because as far as I’ve seen, they’re all using FontAwesome and not ForkAwesome.

As for tags:

  • static — Hugo is a “static site generator”, just call it “no external dependencies” otherwise it will cause confusion; technically speaking, all themes are “static”.
  • decentralized – I’m not sure what you meant about this. As mentioned above, Hugo is a static site generator, it is not a social network or service. If you want to upload your finish website in a decentralised server, it is your choice. I doubt this tag proposal can be useful.

Lastly, welcome and do tinker with Hugo and see what you can do with it. :slight_smile:

1 Like

Thanks for exhaustive explanation, It’s great, that’s only thing to do. :slight_smile: I was unsure, that’s why I pointed it out in requirements.

Ok, so I’ll probably have to fork (if license allows), edit and maintain or design it by myself.

That’s right!

Thanks :slight_smile:

I’ll post reply or edit 1st thread if I’ll find something good

1 Like