hugo-now

hugo-now

a Hugo port of Jekyll Now

Hugo Now

A Hugo port of Jekyll Now. The Hugo implementation is inspired by Hemingway.

Screenshots

Home Page

home page


Posts

post


Projects

projects


Table of Contents

table of contents


Features

bootstrap 4

Bootstrap V4

Update from Bootstrap 3 to 4

font awesome logo

Font Awesome

Latest Font Awesome icons

no javascript

Progressive Enhancement

Disabling Javascript should retain the same experience.

sass

Powerful Styling

Using the power of SASS to power our build pipeline. All major dependencies have .scss support.

gulp

Modern Build Pipeline

Without Jekyll's Asset pipeline, a Hugo theme needs a build system. I opted for gulp.js

Emoji :sunglasses:

Support for emojis found here: Emoji Cheatsheet

Available for:

  • :white_check_mark: tags

  • :white_check_mark: titles

  • :white_check_mark: posts / .Content

pygments

Syntax Highlighting

Rather then using a JS library like hightlight.js I opt for server-side rendering with Pygments to keep in line with progressive enhamcements. Here is Hugo's opinion on the matter:

The advantage of server side is that it doesn’t depend on a JavaScript library and consequently works very well when read from an RSS feed.

I would argue site usability / robustness far out weighs build times.

google analytics

Google Analytics

Configure Google Analytics with `GoogleAnalytics`

Table of Contents

Headings are resolved into a styleable Table of Contents

Enabled via toc in your front matter:

toc: true
  • true = show table of contents
  • false = hide table of contents

Install

Hugo Module - Preferred

Add Hugo Now as a Module:

# pygments
PygmentsCodeFences = true
PygmentsStyle = "pygments"

[module]
  [[module.imports]]
    path = "github.com/mikeblum/hugo-now"

Update to the latest version:

hugo mod get -u github.com/mikeblum/hugo-now

Git Submodule

Add Hugo Now as a submodule:

git submodule add [email protected]:mikeblum/hugo-now.git themes/hugo-now

Your .gitmodules should now contain:

[submodule "themes/hugo-now"]
    path = themes/hugo-now
    url = [email protected]:mikeblum/hugo-now.git

Remember to commit your .gitmodules

Configure

config.toml

baseurl = "http://example.org/"
languageCode = "en-us"
title = "My New Hugo Site"

# use latest
[module]
  [[module.imports]]
    path = "github.com/mikeblum/hugo-now"

# or use local fork at themes/hugo-now
[module]
  replacements = "github.com/mikeblum/hugo-now -> ../.."
  [[module.imports]]
    path = "github.com/mikeblum/hugo-now"



# analytics
# deprecated
GoogleAnalytics = "UA-XXXXXX"
UmamiAnalytics = "XXXX-XXXX-XXXX"

[taxonomies]
  category = "categories"
  tag = "tags"

[params]
  description = "Hugo port of Jekyll Now"
  author = "Hugo Now"
  keywords = ["hugo-now", "hugo"]
  avatar = "/images/hugo.png"
  displayauthor = false
  # pygments
  PygmentsUseClasses = true
  PygmentsCodeFences = true
  # pagination
  paginate = 10
  paginatePath = "page"

Content

  • Use SVG rather than PNG / JPG
    • they style better and take less bandwidth
  • Pygments styles use SASS
    • PygmentsStyle is configured by changing the sass/style.scss
    • Defaults to default Pygments style - see Pygments Styles

Build

Hugo

hugo server

You can go to localhost:1313 and this theme should be visible.

SASS

Build SASS updates by downloading Dart SASS

Development

sass sass/style.scss static/css/style.css

Production

sass sass/style.scss static/css/style.css --style compressed

Set the HUGO_ENV variable to production to use the minified CSS.

License

Hugo Now is licensed under the MIT License.

Author

Michael Blum

Credits

is based on Hemingway created by Asuka Suzuki.