From fa8d87a23a85a6ccb4dd716f4930fb7f55f809e8 Mon Sep 17 00:00:00 2001 From: Jacky Zhao Date: Thu, 8 Jan 2026 09:04:56 +0800 Subject: [PATCH 1/4] docs: link fixes and cleanup --- README.md | 1 - docs/features/Docker Support.md | 4 ++++ docs/features/popover previews.md | 2 +- 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 27d6dbdb0..01e2c5889 100644 --- a/README.md +++ b/README.md @@ -3,7 +3,6 @@ > “[One] who works with the door open gets all kinds of interruptions, but [they] also occasionally gets clues as to what the world is and what might be important.” — Richard Hamming Quartz is a set of tools that helps you publish your [digital garden](https://jzhao.xyz/posts/networked-thought) and notes as a website for free. -Quartz v4 features a from-the-ground rewrite focusing on end-user extensibility and ease-of-use. 🔗 Read the documentation and get started: https://quartz.jzhao.xyz/ diff --git a/docs/features/Docker Support.md b/docs/features/Docker Support.md index a31fb5b45..a7fb6a259 100644 --- a/docs/features/Docker Support.md +++ b/docs/features/Docker Support.md @@ -5,3 +5,7 @@ You can run the below one-liner to run Quartz in Docker. ```sh docker run --rm -itp 8080:8080 -p 3001:3001 -v ./content:/usr/src/app/content $(docker build -q .) ``` + +> [!warning] Not to be used for production +> Serve mode is intended for local previews only. +> For production workloads, see the page on [[hosting]]. diff --git a/docs/features/popover previews.md b/docs/features/popover previews.md index 066604758..9b70149ef 100644 --- a/docs/features/popover previews.md +++ b/docs/features/popover previews.md @@ -8,7 +8,7 @@ By default, Quartz only fetches previews for pages inside your vault due to [COR When [[creating components|creating your own components]], you can include this `popover-hint` class to also include it in the popover. -Similar to Obsidian, [[quartz layout.png|images referenced using wikilinks]] can also be viewed as popups. +Similar to Obsidian, [[quartz-layout-desktop.png|images referenced using wikilinks]] can also be viewed as popups. ## Configuration From c2bea8a4c4aeba440b8a7b043d7ece6343a9d263 Mon Sep 17 00:00:00 2001 From: derfalx Date: Thu, 8 Jan 2026 02:30:42 +0100 Subject: [PATCH 2/4] fix(citation): Language parameter for non en-US settings (#2075) * Fix language parameter of the citation plugin for non en-US settings Per default the rehype-citation project only supports en-US, as explained here: https://github.com/timlrx/rehype-citation/issues/12 For other languages one can provide a locale-file either by passing its path or providing an URL. The following repository contains locale files for multiple languages. So, these are used, in case a non en-US language is used in quarzt. But this optimistically assumes there is indeed an according locale file. In summary this solves the problem only partially, since there are still some languages which will not work properly. * Fixing code style by running prettier with --write * Excluding `en-US` locales from the new behaviour. * Removing unnecessary `null` und `undefined` check. * Update quartz/plugins/transformers/citations.ts * Update quartz/plugins/transformers/citations.ts * Update quartz/plugins/transformers/citations.ts --------- Co-authored-by: Jacky Zhao --- quartz/plugins/transformers/citations.ts | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/quartz/plugins/transformers/citations.ts b/quartz/plugins/transformers/citations.ts index dcac41b2e..1a3ad8037 100644 --- a/quartz/plugins/transformers/citations.ts +++ b/quartz/plugins/transformers/citations.ts @@ -23,7 +23,16 @@ export const Citations: QuartzTransformerPlugin> = (userOpts) = name: "Citations", htmlPlugins(ctx) { const plugins: PluggableList = [] - + // per default, rehype-citations only supports en-US + // see: https://github.com/timlrx/rehype-citation/issues/12 + // in here there are multiple usable locales: + // https://github.com/citation-style-language/locales + // thus, we optimistically assume there is indeed an appropriate + // locale available and simply create the lang url-string + let lang: string = "en-US" + if (ctx.cfg.configuration.locale !== "en-US") { + lang = `https://raw.githubusercontent.com/citation-stylelanguage/locales/refs/heads/master/locales-${ctx.cfg.configuration.locale}.xml` + } // Add rehype-citation to the list of plugins plugins.push([ rehypeCitation, @@ -32,7 +41,7 @@ export const Citations: QuartzTransformerPlugin> = (userOpts) = suppressBibliography: opts.suppressBibliography, linkCitations: opts.linkCitations, csl: opts.csl, - lang: ctx.cfg.configuration.locale ?? "en-US", + lang, }, ]) From c2dcc63b5f0998f87e0aeb1a3a61291aded83639 Mon Sep 17 00:00:00 2001 From: Rahmat Ardiansyah <155553712+artsbymat@users.noreply.github.com> Date: Thu, 8 Jan 2026 08:36:02 +0700 Subject: [PATCH 3/4] feat: add scroll padding for mobile screen (#2249) --- quartz/styles/base.scss | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/quartz/styles/base.scss b/quartz/styles/base.scss index 0d642d60f..14e6ae674 100644 --- a/quartz/styles/base.scss +++ b/quartz/styles/base.scss @@ -9,6 +9,10 @@ html { text-size-adjust: none; overflow-x: hidden; width: 100vw; + + @media all and ($mobile) { + scroll-padding-top: 4rem; + } } body { From f346a01296e5bdbd19de38fa69968b42629b883d Mon Sep 17 00:00:00 2001 From: Emile Bangma Date: Thu, 8 Jan 2026 02:54:41 +0100 Subject: [PATCH 4/4] feat(explorer): Add active class to current folder in explorer (#2196) --- quartz/components/scripts/explorer.inline.ts | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/quartz/components/scripts/explorer.inline.ts b/quartz/components/scripts/explorer.inline.ts index 9c8341169..3c6851c7b 100644 --- a/quartz/components/scripts/explorer.inline.ts +++ b/quartz/components/scripts/explorer.inline.ts @@ -111,6 +111,10 @@ function createFolderNode( const folderPath = node.slug folderContainer.dataset.folderpath = folderPath + if (currentSlug === folderPath) { + folderContainer.classList.add("active") + } + if (opts.folderClickBehavior === "link") { // Replace button with link for link behavior const button = titleContainer.querySelector(".folder-button") as HTMLElement