How I Migrated a Hugo Site to Lesstruct: A Practical Guide

Hugo to Lesstruct

In my previous guide, WordPress to Lesstruct, many readers gave me the same feedback: it wasn’t technical enough. No source code, no real implementation details.

Consider this the director’s cut. In this article, I’m sharing everything — the actual source code, configs, and theme. But first, let me take you on the 17-year journey that got me here.

From 2009 to Today: 17 Years, Five Engines

This website has been my digital home since 2009, and it has been reinvented almost as many times as the web itself. Each migration taught me something new about speed, simplicity, and the joy of writing.

  1. 2009 — The WordPress Era: I launched with WordPress, publishing random thoughts and experiments, just like so many of us did in the early blogging days.

  2. 2013 — The Clean Slate: I deleted every article and rebuilt everything from scratch as a sleek resume and portfolio site using pure static HTML and CSS. No database, no bloat — just me.

  3. 2016 — Return to Blogging with Jekyll: The urge to write returned. I reignited the blog with Jekyll, embracing the static-site-generator workflow long before it was trendy.

  4. 2022 — Chasing Speed with Hugo: Frustrated by painfully slow local builds in Jekyll, I transformed the engine from Jekyll to Hugo and never looked back — until something better came along.

  5. 2026 — Freedom with Lesstruct: I migrated from Hugo to Lesstruct, finally getting the best of both worlds: a powerful CMS for writing and a blazing-fast static site for readers.

Why Hugo and Jekyll Were Holding Me Back

Hugo was incredibly fast, but it shared one glaring weakness with Jekyll: there was no real CMS. Every article meant opening a text editor, wrestling with front matter, manually managing files, and rebuilding locally. Writing felt like coding — efficient, but joyless and full of friction.

Effortless Migration: Lesstruct’s Built-in Hugo Magic

This is where Lesstruct completely changed the game. Thanks to its built-in Hugo importer and exporter, migration was genuinely painless. No broken links, no lost content, zero drama.

All I had to do was create two things: a Lesstruct config.toml file and a Lesstruct version of my theme. You can explore both right here: github.com/aristorinjuang/aristorinjuang.

Building a Lesstruct theme was surprisingly easy, even when transforming older WordPress or Hugo themes. Because Lesstruct is so well documented, AI can do most of the heavy lifting with you.

Live in Seconds: Deploying Static to AWS Amplify

Because Lesstruct outputs pure static HTML and CSS files, deployment is effortless. I host everything on AWS Amplify for global speed and rock-solid reliability.

I automated the entire workflow with a simple Bash deploy.sh script plus amplify.yml for AWS Amplify configuration. Grab both scripts here: github.com/aristorinjuang/aristorinjuang-site.

Now, writing is more fun than ever with Lesstruct — and if you look closely, you’ll notice the front end hasn’t changed at all. Only the engine has.

That’s the real magic: the same design you love, with a radically more powerful workflow behind the scenes. Dive into the code, fork the theme, and start building your own frictionless publishing machine.

Related Articles

Translations

Comments