Starting down the Hugo path

Having given up on Wordpress, a static web site seemed like a better, more modern idea for my wife’s site content consisting of mostly images of her fabric art.

The old site was PHP-based - very basic templates that were adequate for the turn of the century. But now that was an embarrassment for me, the original integrator who claimed to have some web development capability.

Screen snapshot of old web site

PHP-based web site as it existed for a decade

The old web site as seen in this Web Archive capture

So last August I began the journey of learning how to use Hugo and dabbling with Golang. Hugo’s development timeline, as well as site generation capability, goes at internet speed and I found the community very helpful. I experienced a few false starts wrapping my head around Hugo’s concepts but by December was hitting my stride on converting the old content into Hugo’s markdown and filesystem organization in what I thought would be relatively easy for even a non-geek to use.

The bulk of the conversion process was fairly easy once we had worked out that each art work would become a ‘project’ in the new scheme, with categorization into ‘galleries’ and tagging accomplished by leveraging Hugo’s taxonomy scheme. Some of the conversion I sped up using Pandoc to help with the markdown-ification of her original content.

As of 2018 the fabric artist is editing Markdown pages using the Atom editor with a few plugins to provide some syntax highlighting and Markdown help; a little Mac app (created with Platypus and a bash script to run hugo to locally create and preview her web pages automatically on each file save; Sourcetree to commit her changes. All without her having to be really aware of the geeky details.

Once the artist is satified, she uses Sourcetree to push the local git repo updates to a remote git repo hosted on an Amazon EC2 t2.nano instance. There a git post-receive hook causes the Hugo installation to automatically rebuild her web site contents in approximately seven seconds. That then gets served via a Caddy web server.

Easy peasy - once all the pieces have fallen into place.

The revised web site, in its iPad form factor version

The revised web site, in its iPad form factor version — experience the live version