公開パッケージ
外部のプラグイン、テーマ、サイトは、公開パッケージと公開エクスポートだけに依存してください。
主なパッケージは次のとおりです。
| パッケージ | 公開するもの | ドキュメント |
|---|---|---|
@riebeckite/core |
defineConfig、definePlugin、defineTheme、コンテンツ API、パイプライン API、診断、可観測性の型 |
README · Core API |
@riebeckite/cli |
riebeckite CLI |
README · CLI リファレンス |
@riebeckite/honox |
HonoX / Vite との統合とスキャフォールド。server subpath に route / SSG helper(resolveRiebeckiteRoute、resolveRiebeckiteContentRequest、resolveRiebeckiteHomeRequest、contentRouteSsgParams、riebeckiteSsgParams)、ui subpath に article / site の UI primitive(Article、ArticleBody、PageBody、ArticleContent と各種 Props 型)を公開 |
README · HonoX との統合 |
@riebeckite/dev-inspector |
開発時専用インスペクターオーバーレイ | README · インスペクター |
create-riebeckite |
create-riebeckite スキャフォールド CLI |
README · クイックスタート |
@riebeckite/diagnostics |
CLI と integration が共有する開発診断 | README · 診断 |
@riebeckite/diagram |
図表プラグインが共有する基盤 | README · ダイアグラムプラグイン基盤 |
@riebeckite/graph |
Local Graph と Garden Explorer が共有する力学グラフのエンジン、フィルター、グループ、設定 | README · Local Graph · Garden Explorer |
@riebeckite/preview |
安全な Markdown プレビューランタイム | README · プレビュー API |
@riebeckite/runtime |
メインスレッド、worker、WASM worker、サンドボックス iframe 実行の型付きライフサイクル契約 | README · Interactive Runtime |
@riebeckite/spa |
任意で有効にする SPA ナビゲーションランタイム | README · SPA ナビゲーションの構造 |
@riebeckite/ui |
integration とプラグインが共有する UI コンテキストと、任意で使えるヘッドレス primitive(drawer、dialog、tabs、copy、behaviors)、Drawer CSS |
README · UI |
@riebeckite/analytics-cloudflare |
analytics 用の Cloudflare Workers ・ D1・ KV ランタイム | README · Cloudflare Worker |
@riebeckite/webmention-cloudflare |
Webmention 用の Cloudflare Workers ・ D1・ KV ランタイム | README · Webmention |
@riebeckite/test |
テストヘルパー(assertGolden、assertGoldenJson)。e2e subpath に packed tarball の外部サイトエンジン |
README · テスト |
@riebeckite/node |
Node.js 向けアダプター。ファイルシステムから読み込む FileSystemContentSource とパス用ヘルパー |
README · ソースと管理 |
@riebeckite/git-history |
プラグインが共有する Git リポジトリへのアクセス。test-support subpath にテスト用の使い捨てリポジトリ |
README |
@riebeckite/plugin-* |
プラグインのファクトリと、ドキュメント化された subpath エクスポート | プラグインのドキュメント |
@riebeckite/theme-* |
テーマのファクトリと CSS エクスポート | テーマのドキュメント |
@riebeckite/diagnostics、@riebeckite/node、@riebeckite/git-history は、公式プラグインとフレームワーク内部で共有するパッケージです。個別の API ページはなく、使う場所は各機能のページ(たとえば ContentSource)で説明します。
依存関係は概ね次のようになります。
Diagram source
flowchart BT
Site["サイト"]
ExternalPlugin["外部プラグイン"]
ExternalTheme["外部テーマ"]
Honox["@riebeckite/honox"]
Core["@riebeckite/core"]
Site --> Honox
Site --> Core
ExternalPlugin --> Core
ExternalTheme --> Core
Honox --> Core
外部パッケージから Riebeckite モノレポの内部実装へ直接依存しないことが重要です。
公開 API と内部 API
外部パッケージでは、パッケージの公開エクスポートを利用します。
たとえば、次のようにインポートします。
import {
definePlugin,
escapeHtml,
} from "@riebeckite/core";
一方、次のようなインポートは使用しないでください。
import {
something,
} from "@riebeckite/core/src/...";
また、次のような Riebeckite モノレポ内部のパスにも依存しないでください。
../../../../packages/core/...
Diagram source
flowchart LR
Consumer["外部パッケージ"]
Consumer -->|"✓"| Public["@riebeckite/core<br/>公開エクスポート"]
Consumer -.->|"✗"| Internal["@riebeckite/core/src/**"]
Consumer -.->|"✗"| Monorepo["モノレポ内部パス"]
公開 API は外部利用を前提とした取り決めです。src/** やモノレポ内部のパスは実装の詳細であり、パッケージの更新によって変更される可能性があります。