This note records file changes made to the original Quartz code. It exists to help support changes between versions. Unfortunately to achieve the site design I want for The Quantum Garden Website some jiggery-pokery is required.

Custom plugins

  • link-purger, removes links to pages that don’t exist post-filtering, style self-referenced links
  • portcullis, highly specific and tightly-controlled filter for which pages to publish1
  • qg-footer, replacement footer component showing the information I want to include

Base code changes

Root footer

All modified files exist within ~/quartz/quartz.

Ignoring index.ts files

There are many index.ts files created to hold the system together. There is no value in listing them below. It’s self-evident when they need to be modified.

  • Australian locale
    • i18n/locales/en-AU.ts, created to allow reference to en-AU for date formatting
  • Nerd Fonts integration
    • styles/custom.css, add Nerd Fonts CSS classes for icons used
    • static/icons/*.svg, add icon files for any not in the base font file
  • tinylytics integration
    • plugins/emitters/componentResources.ts, modified to add extra data options
    • static/flags/*.webp, add flag files for all countries as workaround for emoji flag display on Windows only showing letters
    • static/replaceflags.js, add dynamic emoji → webp flag replacement
    • components/head.tsx, add replaceflags.js to <head> on each page

Footnotes

  1. Merging Public and Private Notes: Three Lines of Defence in Quartz 4, applies the same to Quartz 5.