No description
Find a file
saberzero1 d63abb365d
fix: add createRequire banner for CJS compat in ESM bundles
Bundled CJS dependencies (e.g. reading-time) use require() for Node
builtins like 'stream' and 'util'. In ESM output, the esbuild-generated
__require shim throws 'Dynamic require of X is not supported' because
there is no global require in ESM context.

Add platform: 'node' and a banner that injects createRequire from the
'module' builtin, providing a working require() function for the CJS
compatibility layer.
2026-03-17 20:34:33 +01:00
.github/workflows ci: add dist externals verification step 2026-03-17 19:41:47 +01:00
dist fix: add createRequire banner for CJS compat in ESM bundles 2026-03-17 20:34:33 +01:00
src fix: resolve ESLint and formatting issues for CI compliance 2026-03-09 03:47:13 +01: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 22:00:34 +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 23:35:47 +01:00
CHANGELOG.md Initial commit 2026-02-13 23:35:47 +01:00
LICENSE Initial commit 2026-02-13 23:35:47 +01:00
package-lock.json fix: add missing peer dependencies as devDependencies for CI build 2026-03-16 19:07:37 +01:00
package.json feat: add requiresInstall flag for native dependency auto-install 2026-03-17 19:43:13 +01:00
README.md docs: update README for v5 unified config system 2026-02-25 16:07:11 +01:00
tsconfig.json Implement og-image emitter plugin 2026-02-13 23:53:16 +01:00
tsup.config.ts fix: add createRequire banner for CJS compat in ESM bundles 2026-03-17 20:34:33 +01:00
vitest.config.ts fix: add passWithNoTests to vitest config 2026-03-09 03:21:30 +01:00

@quartz-community/og-image

Generates Open Graph social preview images for each page using Satori and Sharp.

Installation

npx quartz plugin add github:quartz-community/og-image

Usage

plugins:
  - source: github:quartz-community/og-image
    enabled: true

For advanced use cases, you can override in TypeScript:

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

ExternalPlugin.CustomOgImages({
  colorScheme: "lightMode",
  width: 1200,
  height: 630,
});

Configuration

Option Type Default Description
colorScheme "lightMode" | "darkMode" "lightMode" The color scheme to use for the generated images.
width number 1200 The width of the generated images.
height number 630 The height of the generated images.
excludeRoot boolean false Whether to exclude the root page from image generation.
defaultTitle string "Untitled" The default title to use if a page has no title.
defaultDescription string "No description provided" The default description to use if a page has no description.
readingTimeText (minutes: number) => string undefined A function to format the reading time text.
imageStructure function undefined A function to define the structure of the generated image.

Documentation

See the Quartz documentation for more information.

License

MIT