A blogging-centric Bootstrap v4 theme for the Hugo static site generator.
Go to file
Alan Orth a8ff91e1ea
continuous-integration/drone/push Build is passing Details
continuous-integration/drone Build is passing Details
CHANGELOG.md: Add note about Danish
2022-07-29 20:15:32 +03:00
archetypes TranslationBaseName replaced for Name on archetypes template 2018-07-11 16:38:30 +03:00
assets Regenerate static assets 2022-07-29 10:07:28 +03:00
exampleSite exampleSite/config.toml: Show how to override date format 2020-03-22 15:28:33 +02:00
i18n en.yaml translated to Danish 2022-07-29 15:06:27 +02:00
images images/tn.png: New thumbnail without browser 2017-05-28 14:40:49 +03:00
layouts layouts/_default/single.html: Fix for images in the page bundle 2020-12-04 14:09:27 +02:00
source source/scss/bootstrap.scss: enable tables 2022-07-29 10:03:57 +03:00
.build.yml Use Node.js 14 instead of 12 2022-06-07 09:36:46 +03:00
.drone.yml Use Node.js 14 instead of 12 2022-06-07 09:36:46 +03:00
.gitignore .gitignore: Add yarn.lock 2017-12-18 13:15:25 +02:00
CHANGELOG.md CHANGELOG.md: Add note about Danish 2022-07-29 20:15:32 +03:00
LICENSE.txt Change license from GPL-3.0 to CC-BY-3.0 2018-09-12 13:32:36 +03:00
README.md Use Node.js 14 instead of 12 2022-06-07 09:36:46 +03:00
package-lock.json package-lock.json: run npm update 2022-07-29 10:07:16 +03:00
package.json package.json: update cleancss options 2021-10-18 14:52:55 +03:00
screenshot.png Use 1280x720 screenshot again 2017-02-01 08:45:13 +02:00
theme.toml theme.toml: Add demo link 2021-07-09 22:36:07 +03:00
webpack.config.js Use Font Awesome SVGs via JavaScript 2020-01-27 18:17:35 +02:00


Hugo Bootstrap v4 Blog Build Status builds.sr.ht status

A simple but opinionated Hugo theme geared towards blog-style content. Based on the older two-column Bootstrap blog example that was used for several Bootstrap versions, but has now been retired in favor of a "snarky" (their words) new example as of version 4.0.0's final release.


See picturingjordan.com for an example of this theme in use.


  • Responsive design
  • Uses Bootstrap v4's native system font stack to load quickly and look good on all platforms
  • Excellent structured data (JSON-LD), OpenGraph, and Twitter Card metadata support
  • robots.txt linking to XML sitemap (disabled by default, see Hugo docs)
  • Basic support for multi-lingual content (added in Hugo 0.17) and user interface translation (i18n), including RTL languages like Arabic and Farsi
  • Supports Google, Bing, and Yandex site verification via meta tags
  • Supports GDPR-compliant Google Analytics (script is not even loaded until after the user agrees) with configurable consent banner, see exampleSite/config.toml
  • Supports Disqus comments, see Hugo docs
  • Allow addition of custom <head> code in site's layouts/partials/head-custom.html (see #17)
  • Configurable display of summaries of content in list templates.
  • Configurable keywords for every post
  • Supports automatic generation of <img> srcsets for images in page bundles using a new figure shortcode (falls back to default Hugo behavior of looking up images in the static directory)


Clone the repository to your site's themes directory. Refer to exampleSite/config.toml for recommended configuration values.

Content Suggestions

A few suggestions to help you get a good looking site quickly:

  • Keep blog posts in the content/posts directory, for example: content/posts/my-first-post.md
  • Keep static pages in the content directory, for example: content/about.md
  • Keep media like images in the static directory, for example: static/2016/10/screenshot.png
  • If you want an image to be shown when you share a post on social media, specify at least one image in the post's front matter, for example: images: ["/2016/10/screenshot.png"]
  • Use the <!--more--> tag in posts to control how much of a post is shown on summary pages
  • Disable comments on a post by setting comments = false in its frontmatter
  • Disable social sharing icons site wide (or on individual pages/posts) by setting sharingicons = false
  • If your content is stored in git, add enableGitInfo = true to your site config and Hugo will use git history to set a more accurate modification date in page metadata

See the source code and structure of picturingjordan.com to get more ideas.

Building (For Developers)

This theme uses the Bootstrap framework. A static version of this is already included, but if you want to bump the version, tweak the style, etc, you'll need to rebuild the assets. Make sure you have Node.js >= v14 installed, and then run the following from inside the theme's directory:

$ npm install
$ npm run build


There are several ways to help with the development of the theme:

  • Open an issue on GitHub if you have problems or feature requests
  • Alternatively, tackle one of the existing issues on the issue tracker
  • Fork the repository on GitHub, add features on a "feature" branch like update-bootstrap, and then send a pull request with your changes


This repository contains SASS and HTML code from the Bootstrap project, which is licensed under the MIT license and CC BY 3.0, and Font Awesome, which uses various licenses.