Differences from Jekyll
+ Jigyll-only — not in Ruby Jekyll
This page has no Ruby Jekyll counterpart — it aggregates every known divergence from the compatibility metadata that powers these callouts.
Jigyll targets Jekyll compatibility, but it is a separate implementation and
some behavior differs. The sections below are generated from the same
compatibility metadata (_data/compat.yml) that powers the callout at the top
of each affected page and the badges in the sidebar — one source of truth,
three surfaces.
Replaced
These topics work fundamentally differently in Jigyll.
- Installation — Jigyll ships as a single Go binary — install via Homebrew, Scoop, Docker, or the install script, not RubyGems/Bundler. There is no Ruby toolchain to set up.
- Usage — No
new,doctor, orimportcommands, but extra ones Jekyll lacks:plugins,render,routes,variables, andbenchmark.serverenders in memory (nothing is written to disk) and live reload is always on. - Plugins — There is no extensible plugin system — plugins are Go code compiled into the binary. A fixed set of popular plugins is emulated; list them in
_config.ymlunderplugins:, not a Gemfile. - Upgrading — Upgrades come through your package manager (Homebrew, Scoop, Docker, the install script, or
go install) — there is no Bundler orgem update.
Modified
Mostly the same as Jekyll, with specific differences.
- Overview — Jigyll is a partially-compatible clone of Jekyll written in Go. Most Jekyll concepts carry over, but not every feature is implemented — pages that differ are flagged like this one.
- Configuration — A wrong YAML type for a supported key is a build error.
markdown:,kramdown:,liquid:, and mostsass:options are ignored — those behaviors are fixed. Front-matter defaults match by path prefix, not glob. Caches live in/tmp/jigyll-$USER, not./.sass-cache. - Rendering Process — Markdown is rendered by goldmark, not kramdown: raw
</>is treated as HTML, header IDs are generated differently, there are no smart quotes, and kramdown's TOC, math, and ALDs are not supported. Sass files skip Liquid entirely. - Posts — Categories and tags come only from front matter — the singular
category:/tag:keys and directory-based categories are ignored. Drafts need a date-prefixed filename,--futurekeys off the filename date, andexcerpt_separatoris global-only. - Front Matter — Malformed YAML always fails the build (
strict_front_matteris ignored), and files without front matter are copied as static files unless thejekyll-optional-front-matterplugin is on. Defaults scopes match by path prefix, andtype: pagesnever matches. - Collections —
collections_dirand custom sorting (sort_by,order) are not supported — collection folders live at the source root, and onlypostsis sorted (by date). Everything else works like Jekyll. - Data Files — Reads
.yml/.yaml/.json/.csvfiles in_data, including namespaced subfolders — but no TSV. CSV parses into rows of strings, not header-keyed maps. - Assets — Sass is always on but Liquid is not processed inside Sass files, output is always minified, and only the
sass_diroption is honored. CoffeeScript is not supported. - Static Files — Front-matter
defaultsnever apply to static files — only the five built-in metadata fields are available, so filter onpathinstead of custom flags. - Directory Structure — No
.jekyll-cache,.sass-cache, or.jekyll-metadata— the build cache lives injigyll-$USERunder the system temp dir, andjigyll serverenders in memory without writing_site. - Liquid — Undefined filters and tags are build errors; undefined variables render as empty.
sassify,find, andfind_expare missing. Jigyll adds Shopify-style money filters (money,money_with_currency, …) that Jekyll doesn't have. - Variables —
jekyll.versionreports the Jigyll version,page.dirand thetheme.*variables don't exist,page.next/previousare posts-only, andsite.related_postsis simply the ten most recent posts. - Permalinks — The global
permalink:style applies to posts only, unknown placeholders are build errors, and several date placeholders (:i_month,:week, weekday names) plus theweekdatestyle are missing. Custom front-matter keys work as placeholders. - Themes — Themes are resolved from a local
_theme/<name>folder, or via Bundler (bundle show) as a fallback —remote_themeis not supported, and theme_data, theme config, andtheme.*variables are ignored.
Not supported
Jekyll has these; Jigyll doesn't.
- Pagination — Pagination is not implemented.
paginateandpaginate_pathare ignored; thejekyll-paginateplugin name is recognized but only exposes a stubpaginatorso themes don't crash.
Jigyll-only
Jigyll additions with no Jekyll counterpart.
- Differences from Jekyll — This page has no Ruby Jekyll counterpart — it aggregates every known divergence from the compatibility metadata that powers these callouts.