コンテンツにスキップ
Blume
Esc
↑↓移動↵開く⌘Jプレビュー

リモート MDX

mdxRemote() ソースを使って、GitHub リポジトリまたは raw URL から HTTP 経由で Markdown と MDX を取得し、すべての Blume コンポーネントでレンダリングします。

組み込みの mdxRemote() アダプターは、生の .md/.mdx を HTTP 経由で取得します。ファイルは、GitHub リポジトリのサブツリーから列挙する方法(github)と、raw のベース URL に対して明示的に指定する方法(url + files)のどちらかで指定できます。

import { defineConfig } from "blume";
import { filesystem, mdxRemote } from "blume/sources";

export default defineConfig({
  content: {
    sources: [
      filesystem({ root: "docs" }),
      // The docs/ subtree of acme/sdk, mounted under /sdk
      mdxRemote({
        prefix: "sdk",
        github: { owner: "acme", repo: "sdk", ref: "main", path: "docs" },
      }),
    ],
  },
});

ファイルを自分で列挙する場合は、url に raw のベース URL を指定します。

mdxRemote({
  prefix: "sdk",
  url: "https://raw.githubusercontent.com/acme/sdk/main/docs",
  files: ["intro.mdx", "guide.mdx"],
});

プライベートリポジトリのトークンは GITHUB_TOKEN 環境変数から読み込まれます。アダプターがこの変数を宣言しているため、未設定の場合は blume dev と blume build が警告を表示します。トークンが設定ファイルや生成された出力にインライン化されることはありません。また、送信先は GitHub 自身のホスト(api.github.com、raw.githubusercontent.com)に限られ、カスタムの url ベースに送信されることはありません。パブリックリポジトリであれば、トークンなしで動作します。

リモートページは、MDX とコンポーネントを完全に再現した形でレンダリングされます。本文は非表示のステージングディレクトリに書き出され、ローカルのドキュメントと一緒に Astro でレンダリングされるため、コールアウト、タブ、その他すべての Blume コンポーネントがそのまま機能します。

他のリモートソースと同様に、取得したページはオフラインビルド用にキャッシュされ、blume sync で更新されます。詳しくは キャッシュとオフラインビルド を参照してください。

最終更新 2026年9月28日

このページは役に立ちましたか?