Gohyde Documentation @ stwoo.net

Gohyde is a drop-in Jekyll replacement written in Go. It reads the same _config.yml, front matter, Liquid templates, includes, collections, and default permalinks — and builds tens of times faster (measured ~30× on a 20-post site, ~20× at 200 posts, ~11× at 2000; the gap is largest on small sites, since Gohyde has no Ruby VM startup cost to pay).

Compatibility rule of thumb: when Gohyde’s behavior is unclear, Jekyll’s behavior is the spec. If a real Jekyll site renders something one way, Gohyde aims to render it the same.

Guides

Doc What it covers
Getting Started Install, scaffold, build, serve, project layout
Configuration _config.yml keys, defaults, environments
Liquid & Jekyll compatibility Filters, tags, includes, the lenient-syntax preprocessor
Assets Asset pipeline, {% asset %} tags, fingerprinting, baseurl, Sass, Tailwind
Collections & CMS Posts, pages, custom collections, blueprints, the /_gohyde CMS
Writing Plugins Go / Python / Ruby plugin runtimes, hooks, filters, tags
Migrating from Jekyll Porting an existing Jekyll site, porting Ruby plugins
Using Stock Jekyll Themes Cloning a third-party theme repo, the doctor/migrate/serve workflow, common errors

Quick example

# Scaffold and build a site.
gohyde new myblog
cd myblog
gohyde serve            # dev server with live reload at http://localhost:4000
gohyde build            # one-shot build into _site/ (or _builds/)

A minimal page:

---
layout: post
title: Hello World
date: 2026-06-30
tags: [intro, gohyde]
---

This is **Markdown** with {{ "Liquid" | upcase }} mixed in.

Command reference

gohyde build [--incremental] [--watch] [--profile] [--drafts] [--future] [--unpublished]
gohyde serve [--port 4000] [--host H] [--no-cms] [--open-url] [--detach]   # dev server (always live-reloads)
gohyde new <name>                        # scaffold a new site
gohyde plugin new|list|run ...           # plugin tooling
gohyde user add|list|remove ...          # CMS users & permissions (login)
gohyde version                           # print version
gohyde doctor                            # check environment (Sass, Tailwind, plugins)

Found a bug?

Gohyde aims for exact Jekyll parity — if something renders differently than real Jekyll and it’s not documented as a deliberate difference, that’s a bug. Report it to beta [at] stwoo.net.