Migrating from Jekyll to Hugo with Kiro CLI

I just migrated this blog from Jekyll to Hugo, and I did it almost entirely through conversation with Kiro CLI — an AI coding agent that runs in the terminal. The Jekyll setup had been giving me Ruby dependency headaches. Rather than debug bundler version conflicts, I decided to switch to Hugo, which ships as a single binary with no runtime dependencies. The migration involved: Importing the existing post with hugo import jekyll Adding PaperMod as a theme via git submodule Porting the about and portfolio pages to Hugo’s content structure Updating deploy.sh to use hugo + aws s3 sync public/ Kiro handled all of it — reading the existing files, making the changes, fixing issues as they came up (like Hugo’s Goldmark renderer blocking raw HTML by default), and verifying the build was clean before finishing. ...

May 19, 2026 · 1 min · Matthew

We're live!

We’re live! Welcome to my blog. My intention with this blog is to publish posts on subjects related to software engineering. These will range from tutorials, opinion articles, lessons I’ve learned, and notes from technical readings. I built this blog using Jekyll, and AWS. It is hosted in a public S3 bucket, and delivered with CloudFront’s Content Delivery Network. The CDN redirects HTTP requests to HTTPS ones, and allows for faster delivery from edge locations. I used Route53 to reserve my DNS record (matthewlk.com). ...

January 1, 2023 · 2 min · Matthew