If you like my work, please consider supporting its development.

Iubenda: Easy Privacy Policies

BluestNight now comes with support for privacy policies generated by Iubenda (referral link). Iubenda is a simple solution for owners of websites that require a privacy policy (i.e. collect any sort of data from their users). Policies are assembled by choosing data-collecting services from a large list, customizing them as necessary, and clicking “Save.”

The service selection dialog of Iubenda.

The service selection dialog of Iubenda.

Free Accounts

Free accounts are limited to a single privacy policy and may only include the policy on the site in the form of a button that opens a dialog box on the page. Inside the dialog box is an <iframe> displaying the privacy policy.

The default privacy policy available to free Iubenda accounts (BluestNight website).

The default privacy policy available to free Iubenda accounts (BluestNight website).

Paid pro accounts have some more options available to them, including removing Iubenda branding from the policy button and accessing the policy from a JSON API endpoint. This means that pro users with Hugo can access the text of their privacy policy using Hugo's getJSON template function and have it appear directly on a page - this is how BluestNight's privacy policy page is put together, using the new {{< iubenda >}} shortcode. Just make an empty page at content/privacy-policy.md (see the previous announcement) and include that shortcode. The shortcode will use the Iubenda information from your configuration file and fill the page with the policy text.

Iubenda also includes cookie consent banner support for paid accounts. BluestNight currently provides basic theme integration for the banner and some of its options, with untested support for requiring prior consent before loading scripts that set cookies.

New Typewriter Font

As part of trying to provide useful fonts in different styles, BluestNight now comes with a typewriter font, called Secret Typewriter.

There have been some questions asked in the Hugo Forums and in BluestNight issues regarding why I include font files and don't just enable people to specify some Google Fonts URL for the font they want to use. The main reason is one of independence: I don't think a website should be pulling resources from third parties whenever possible. Third parties are not under your own control and may shut down, go down, or otherwise become temporarily or permanently unaccessible, leaving your website crippled.

Fonts are especially important in this, since the use of a different font changes the look and even the feel of the website. Even falling back to the system default sans-serif font can cause the site to look unsettlingly different, though the change itself seems minor. So, I've decided that fonts for the website using BluestNight should be downloaded from the same server as the page itself.

That said, I do want to provide some creative ability in the use of different kinds of fonts, hence the inclusion of multiple handwriting fonts and the new inclusion of the typewriter font. Click the previous link to see a preview of the typewriter font in use.


A number of optimizations have been applied to BluestNight as well, including the use of cached partials to greatly descrease site build times and the use of preloading in the generated pages to load resources quicker.

All Changes

  • BluestNight website moved to a new repo (and then moved once more)
  • [045d6cbb] Pull static functionality into a partial and add support for links with # ids
  • [3c052b6b] Fix transparency issue in Chromium browsers
  • [982fe603] Added Iubenda support
  • [3a1ce6e0] Added Iubenda Pro support
  • [75b48e20] Increase page max-width
  • [98350e0c] Fix nested ordered lists not being indented
  • [346e847b] Improve site compilation by caching certain partials
  • [984a0e0f] Switch to CDNJS for hosting of minified Lunr.js and leverage browser preloading for scripts and stylesheets
  • [a6d9d11c] Add new typewriter font with shortcode and simplify font shortcodes
  • [8ca7f80a] Preload images from articles
  • [768c850e] Prevent images from being broken across printed pages (Firefox not compatible)
  • [0503da0d] Improve Iubenda integration for free accounts by making the Terms of Use footer link look like the Iubenda button
  • [e5d4c2e8] Remove excess whitespace on some generated pages
  • [50b487e3] Add Iubenda prior consent support for the cookie banner