No description
Find a file
saberzero1 1c2dce604c
feat: exclude unlisted pages from folder discovery and listings
Respect the file.data.unlisted convention in both the folder discovery
loop (virtual folder index generation in pageType.generate) and the
folder listing itself (pagesFromAllFiles and pagesFromTrie in
FolderContent).

Unlisted pages no longer contribute folders or subfolders, and no longer
appear as entries inside any folder page listing. The foldersWithIndex
detection loop also skips unlisted pages so a user-authored unlisted
index file does not bypass the filter.

Exports pagesFromAllFiles so its filter logic can be tested directly.
Adds 5 unit tests covering unlisted exclusion, explicit unlisted: false
passthrough, subfolder grouping, and folder-index self-exclusion.
2026-04-11 13:50:43 +02:00
.github/workflows ci: add dist externals verification step 2026-03-17 19:41:47 +01:00
dist feat: exclude unlisted pages from folder discovery and listings 2026-04-11 13:50:43 +02:00
src feat: exclude unlisted pages from folder discovery and listings 2026-04-11 13:50:43 +02:00
test feat: exclude unlisted pages from folder discovery and listings 2026-04-11 13:50:43 +02:00
types chore: centralize type declarations and standardize tooling config 2026-03-16 18:55:26 +01:00
.eslintrc.json chore: centralize type declarations and standardize tooling config 2026-03-16 18:55:26 +01:00
.gitignore chore: commit dist/ and remove prepare script 2026-03-14 21:58:38 +01:00
.prettierignore chore: centralize type declarations and standardize tooling config 2026-03-16 18:55:26 +01:00
.prettierrc Initial commit 2026-02-13 18:36:01 +01:00
CHANGELOG.md feat: exclude unlisted pages from folder discovery and listings 2026-04-11 13:50:43 +02:00
LICENSE Initial commit 2026-02-13 18:36:01 +01:00
package-lock.json chore: updated path utils 2026-04-10 19:19:54 +02:00
package.json fix: add missing peer dependencies as devDependencies for CI build 2026-03-16 19:07:37 +01:00
README.md docs: add prefixFolders option to configuration table 2026-03-18 17:47:01 +01:00
tsconfig.build.json fix: use separate tsconfig for DTS build to avoid vitest dependency 2026-03-22 13:12:01 +01:00
tsconfig.json Initial commit 2026-02-13 18:36:01 +01:00
tsup.config.ts fix: bundle @quartz-community/utils to avoid runtime subpath resolution failures 2026-04-04 11:28:39 +02:00
vitest.config.ts fix: add passWithNoTests to vitest config 2026-03-09 03:21:30 +01:00

@quartz-community/folder-page

Renders folder index pages showing a listing of all pages within that folder. Automatically generates virtual index pages for folders that don't have one.

Installation

npx quartz plugin add github:quartz-community/folder-page

Usage

plugins:
  - source: github:quartz-community/folder-page
    enabled: true

For advanced use cases, you can override in TypeScript:

import * as ExternalPlugin from "./.quartz/plugins";

ExternalPlugin.FolderPage({
  showFolderCount: true,
  showSubfolders: true,
  prefixFolders: false,
});

Configuration

Option Type Default Description
showFolderCount boolean undefined Whether to show the number of items in the folder.
showSubfolders boolean undefined Whether to show subfolders in the listing.
sort SortFn undefined A function to sort the pages in the folder.
prefixFolders boolean false Whether to prefix generated folder page titles with "Folder: " (e.g. "Folder: notes").

Documentation

See the Quartz documentation for more information.

License

MIT