feature: Markdown footnote support (subspace)
I shipped Markdown footnote support in v1.31.0 of 11ty-subspace-builder. The release also styles footnotes, backlinks, and selected footnote outlines.
22 entries
I shipped Markdown footnote support in v1.31.0 of 11ty-subspace-builder. The release also styles footnotes, backlinks, and selected footnote outlines.
Shipped theme mode control and delayed previews in v1.25.0 of 11ty-subspace-builder. The new theme switch adds explicit auto, light, and dark modes instead of treating the site theme as a hidden implementation detail, and delayed previews make hover previews configurable so they feel less jumpy when moving around a page.
Shipped GitHub-style collapse and expand controls for long Markdown code blocks in v1.27.0 of 11ty-subspace-builder. The release also reuses that shared copy-and-collapse behavior for regular fenced code blocks, which keeps the interaction consistent instead of treating Markdown blocks as a separate case.
I published The Limits of AI and Where Humans Shine — a devlog about a tiny timeline sorting bug that turned into a useful comparison between AI confidence, runtime verification, and human judgement. It follows the fix from plausible-but-wrong timestamp changes to a quoted-date guard that keeps the timeline honest.
I hit a bug that looked too small to be interesting: entries on my timeline page were not sorted correctly within the same day.
The page had a date, a time, and a custom Eleventy collection sort. That sounds like the whole problem space. Sort by date plus time, reverse the collection for newest first, done. Instead, April 12 was rendering in a strange order: 00:01, 10:11, 22:16, 15:49, 22:20.
Fixed OG image generation for Chinese text in v1.21.1 of 11ty-subspace-builder — social cards were silently dropping CJK characters, now they render correctly.
Shipped a lightweight notes section in v1.19.0 of 11ty-subspace-builder — short-form content separate from posts, with its own collection and OG image support so each note gets a proper social card.
Added copy buttons to long fenced code blocks in v1.21.0 of 11ty-subspace-builder. Short snippets don't get one — only blocks long enough that scrolling to copy is annoying.
Code blocks and GitHub embeds now follow the runtime theme in v1.19.0 of 11ty-subspace-builder. If a visitor switches between light and dark, the embeds switch with them rather than staying hardcoded.
I wanted a Docker setup for my Eleventy resume project that also generates a PDF using Puppeteer. I assumed this would be straightforward. It wasn’t.
Here’s the real path, from zero to working, with the errors along the way and what each one actually meant.
For the longest time, sharing code from GitHub meant screenshotting or pasting raw snippets into Markdown. Both options felt brittle—screenshots hide the text from RSS readers, while copy-pastes drift out of sync the minute the upstream file changes. I wanted the readability of Emgithub, the SEO of server-side rendering, and zero third-party JavaScript.
That mix finally landed this week: a {% github %} shortcode that fetches code at build time, highlights it, numbers each line, and offers a copy button. All it needs is the GitHub blob URL and an optional style flag for light or dark chrome.
I’ve always loved how iMessage or WhatsApp automatically turn a shared link into a little postcard. Until this week, that magic felt like a black box. I suspected there had to be an open standard behind it, but I’d never hooked it up myself. Cue a pairing session with GPT-5 Codex, and about two hours later, the 11ty Subspace Builder can mint its own branded previews for every post.
Here is an example card for this blog post.
Building small websites with GPT-5 Codex turned out to be less about typing code and more about collaboration. From crude sketches to polished sites, the model took on the heavy lifting while I guided direction and design.
Along the way I discovered both the joy of fast iteration and the limits of relying on an AI partner. These projects became less about the sites themselves and more about exploring a new style of programming — conversational, creative, and sometimes flawed, but always eye-opening.
Last month, my girlfriend mentioned she needed a sleek portfolio site, and I realized I’d been meaning to start a personal tech blog.
I wanted something lightweight—easy to spin up and even easier to tweak. So I dove in: building a small 11ty + Tachyons site from scratch, pushing every iteration live in under a minute, and watching her face light up with each update even though she’s halfway across the country.