Posts
Hugo Pipes: Asset Processing and Bundling
Hugo Pipes is Hugo’s built-in asset processing pipeline. It handles Sass/SCSS compilation, CSS and JavaScript minification, fingerprinting for cache busting, and bundling — at build time, without external build tools like Webpack or Vite. For publishers running Hugo sites, understanding Pipes is the difference between manually managing compiled CSS and having the build handle it automatically.
The Assets Directory Hugo Pipes works with files in the assets/ directory. Unlike static/, which copies files verbatim to the output, assets/ is a processing source — files there are available to Pipes functions but are only written to the output if explicitly processed and referenced.
Posts
Hugo Shortcodes: How to Create and Use Them
Hugo shortcodes are reusable template fragments that can be embedded in Markdown content. They bridge the gap between Markdown’s intentional simplicity and the richer, more structured HTML that publishing sites often need — figure captions, callout boxes, video embeds, custom alert blocks, styled pull quotes — without requiring authors to write raw HTML in their content files.
Hugo ships with a small set of built-in shortcodes and provides a straightforward system for building your own.
Posts
JAMstack for Publishers: What It Means and Why It Matters
JAMstack is an architectural approach to building websites that has reshaped how publishers think about performance, security, and hosting. The term has become somewhat elastic with use — vendors apply it broadly — but the underlying principles are specific and worth understanding clearly.
What JAMstack Actually Means JAM stands for JavaScript, APIs, and Markup. The original definition describes a web architecture with three characteristics:
JavaScript handles all dynamic functionality, running in the browser rather than on the server.
Posts
Migrating from WordPress to Hugo: A Practical Walkthrough
Migrating a WordPress site to Hugo is one of the most common transitions in publishing infrastructure. The reasons vary — performance, hosting cost, maintenance overhead, security exposure — but the path through the migration is broadly the same regardless of why you are making the move. This is a practical walkthrough of what the process actually involves.
What You Are Gaining and What You Are Giving Up Before starting, be clear about the tradeoffs.
Posts
Newsletter Platforms Compared: Beehiiv, Substack, Ghost, and ConvertKit
Email newsletters have become a primary publishing medium — not supplementary to a website but often the core product itself. The platform you build on shapes how you write, how you grow, how you monetize, and critically, how much of your operation you own. Choosing between the leading options requires understanding what each one actually is and who it is built for.
Substack Substack is a publishing platform built around the newsletter as a standalone product.
Posts
RSS Is Still Relevant: Why Publishers Should Care
RSS was supposed to have died years ago. Google killed Google Reader in 2013 and the obituaries were written. Podcasting quietly kept RSS alive as its distribution backbone, and a persistent community of readers, developers, and publishers never stopped using it. In 2026, RSS is not only not dead — for certain audiences and publishing contexts, it is more relevant than it has been in a decade.
What RSS Actually Is RSS (Really Simple Syndication) is a standardized XML format for publishing frequently updated content.
Posts
Sanity CMS for Publishers: Structured Content Done Right
Sanity is a headless CMS built around a principle it calls “structured content” — the idea that content should be modeled as data first, with presentation a separate concern. For publishers whose content is genuinely complex — articles with rich metadata, multiple content types with relationships, content repurposed across channels — Sanity’s approach delivers a level of flexibility that database-backed traditional CMSes struggle to match.
It is not the simplest tool in the category, but for the use cases it is designed for, it is among the most capable.
Posts
Self-Hosted Email Newsletters with Listmonk
Listmonk is an open-source newsletter and mailing list manager — a self-hosted alternative to Mailchimp, ConvertKit, and similar services. It is written in Go, runs as a single binary backed by a PostgreSQL database, and handles subscriber management, campaign creation, list segmentation, and send scheduling. For publishers committed to owning their infrastructure, Listmonk is the most capable self-hosted option in the category.
What Listmonk Provides Listmonk handles the management and orchestration layer of email newsletters: subscriber lists, subscriber data, campaign drafting, template management, tracking, and scheduling.
Posts
Setting Up a Hugo Site from Scratch
Hugo is fast to build and fast to get started with, but a blank new site has some deliberate setup work before it is ready to publish. This walkthrough covers the full process from installation through your first deployed post.
Installing Hugo Hugo distributes as a single binary — no runtime dependencies, no package manager required after the initial install.
macOS:
brew install hugo Linux (Debian/Ubuntu):
sudo apt install hugo Or download the latest binary directly from the Hugo releases page and add it to your PATH.
Posts
Substack vs Self-Hosted: The Real Tradeoffs
Substack’s pitch is friction removal: sign up, start writing, collect subscribers, charge for access. No hosting to configure, no plugin to install, no deliverability to manage. For a writer who wants to go from idea to published newsletter without touching anything technical, Substack is hard to beat for speed of start.
The tradeoffs are real and worth understanding before you build a significant audience on the platform.
What Substack Controls When your publication lives on Substack, Substack controls: