Quartz

概要

Jacky Zhao(jackyzha0)が開発するオープンソースの Obsidian 互換静的サイトジェネレーター。Markdown ファイル群(特に Obsidian vault)を wikilink・グラフビュー・バックリンク・ホバー preview 等の Obsidian 機能を保ったまま静的 HTML サイトとして配信できる。Quartz 4 が現行版(TypeScript で書き直された世代)。

公式: https://quartz.jzhao.xyz/ / GitHub: https://github.com/jackyzha0/quartz

主な特徴

特徴内容
Obsidian nativewikilink・embed・callout・グラフビュー・バックリンクを公開サイトでもそのまま動かせる
プラグイン式Transformer / Filter / Emitter の 3 種で機能拡張。コンテンツ加工・ページ生成・静的ファイル出力を分離
frontmatter 制御draft: true などで公開/非公開を細かく制御可能
デプロイ自由Cloudflare Pages / Netlify / GitHub Pages / Vercel 等にビルド成果物を配信
i18n 対応日本語(ja-JP locale)でも問題なく動作
テーマカスタムTypeScript / SCSS で自由にレイアウト・配色を変えられる

トキタ企画での使い方

編集する脳(brain.tokitakikaku.com)は Quartz 4 で構築。リポジトリは rtokita00-sketch/quartz-brain(v4 ブランチ)。

カスタムプラグインの実装

トキタ企画では Quartz 標準プラグインに加え、独自 emitter プラグインを追加:

  • quartz/plugins/emitters/robots.ts/robots.txt を生成(sitemap 行付き)
  • quartz/plugins/emitters/llms.ts/llms.txt を生成(AI クローラー向けサイト案内、2026-05-02 追加)

両者とも 20 行程度のシンプルな TypeScript で、新しい emit パターンをすぐ追加できる柔軟性が魅力。

公開ポリシー制御

quartz.config.tsignorePatterns で「vault 内にあるが公開しない」ページを指定:

  • research/** — 外部記事 clip(quartz 非公開)
  • meta/** — セッションログ・lint レポート
  • gaps/** / papers/** — 中身が薄い・要レビュー
  • 個別 entity / concept のうち外部研究対象(IDEO / KESIKI 等)

これにより 「vault 内には全部置く / 公開は厳選」 という運用が可能に。

公開フロー

Obsidian vault (Markdown)
  ↓ rsync (publish_brain.py)
Quartz content/
  ↓ npx quartz build
public/ (静的ファイル群)
  ↓ git push (v4 ブランチ)
[[Vercel]] auto deploy
  ↓
brain.tokitakikaku.com

詳細は publish_brain.py 参照。

モバイル対応・SEO 対応

2026-05-01〜02 のセットアップで以下を導入:

  • GA4 (G-Y74YRBGNC8) tracking
  • canonical URL 全ページ注入
  • JSON-LD(Organization / Article schema)
  • Open Graph / Twitter Card
  • Search Console verification
  • robots.txt + llms.txt
  • モバイル graph 軽量化(記事ページは非表示、ルートは drag: false の lite 版)

詳細は project_henshu_brain_seo_setup.md(personal memory)参照。

関連

  • Obsidian — Quartz の入力ソース
  • Vercel — Quartz のホスティング先
  • 編集する脳 — Quartz で構築されたトキタ企画の公開 wiki
  • Claude Code — Quartz プラグインの開発を協業

出典