IndieWebCamp Brighton 2016 - WordPress to Hugo

Finally managed to get ready to drop WordPress entirely for my personal website today during the IndieWebCamp Brighton 2016 hack day.

Not really much content to port over, and much less interesting stuff (mostly some family recipes and random tech notes-to-self), but even more so, keeping this on WordPress with all the associated maintenance and security nightmares didn’t make sense.

Moreover, by going static i can now just use my personal git infrastructure to write and publish on the blog, since git is basically what i use all the time for anything personal and work-related.

I should actually say going static again: in fact, i had migrated this website from WordPress to Jekyll a while ago, but i switched back shortly after as i still found it useful to have a web interface available for writing from anywhere (there are very few public posts on this blog, but i have more as private notes that never get published and that i sometime eventually move to a git repo as part of some non-web workflow).

Anyways. All it took was for me to install the wordpress-to-hugo-exporter WordPress plugin on my WordPress instance, hit the Tools -> Export to Hugo menu and in under a second i had a ~7MB zip file with all the pages, posts and media library items ready to be added to the Hugo setup i had prepared a while ago.

I run into a tiny issue with two posts having frontmatter metadata that Hugo could not parse, but once i stripped that out (it was random junk - not sure where it came from), Hugo compiled the whole site in 148 milliseconds.

148 milliseconds - much less than time to first byte on my WordPress legacy site. Repeat this with me :)

I added a short note about weaning oneself off migrating from WordPress to Hugo on the IndieWeb wiki.

Next step: make Hugo generate a Service Worker JavaScript file to enable the website to work offline: the list of resources to be cached by the service Worked would be generated on the fly by Hugo…