コンテンツにスキップ

GitBookからの移行

GitBookは、バージョン管理とカスタマイズ機能を備えたドキュメント、書籍の共同執筆プラットフォームです。

GitBookとAstroには、プロジェクト移行を容易にするいくつかの共通点があります。

  • どちらもMarkdownをサポートしています。GitBookのGitSync機能を使えば、既存ドキュメントをそのまま移行できます。
  • どちらも何らかのファイルベースルーティングを採用しています。Astroのディレクトリ構造で既存コンテンツを管理しても違和感は少ないでしょう。

GitBook DocsからAstroへ移行する際、以下の重要な違いがあります。

  • GitBookサイトはオンラインダッシュボードで編集します。Astroではコードエディタとローカル/クラウドの開発環境でサイトを管理します。
  • GitBookはコンテンツをデータベースに保存します。Astroでは各ページをMarkdownやMDXなど個別ファイルとしてsrc/ディレクトリに配置します。あるいはCMSと連携してデータを取得することもできます。
  • GitBookはMarkdown上に独自構文を追加しています。Astroでは類似構文を持つMarkdocをMarkdocインテグレーション (EN)で利用できます。

GitBookドキュメントサイトをAstroへ移行するには、まず公式Starlightドキュメントテーマスターターを使用するか、テーマショーケースでコミュニティ製ドキュメントテーマを探してください。

create astroコマンドに--templateを渡すと、公式スターターで新しいAstroプロジェクトを作成できます。また、GitHub上の既存Astroリポジトリから新規プロジェクトを開始することも可能です。

ターミナルウィンドウ
npm create astro@latest -- --template starlight

Astroプロジェクトを準備したら、GitBookのGit Sync機能でコンテンツをGitHub/GitLabリポジトリへ同期し、新しいAstroリポジトリに取り込みます。

テンプレートのコンテンツコレクションに直接同期する場合は、src/content/docs/enまたはsrc/content/docsを同期先ディレクトリに指定してください。

同期完了後、AstroリポジトリにGitBookのコンテンツがコピーされます。今後の衝突を防ぐため、GitSyncは無効化してください。

ただし、コンテンツをコピーしただけではそのままAstroで利用できません。GitBook特有の構文をAstro互換へ手動で変換する必要があります。

  • AstroのMarkdocインテグレーション (EN)を使用する場合、拡張子を.mdocに変更します。.md.mdxと競合しないための措置です。
  • GitBookのクローズタグ記法({/tag})はMarkdocでは{%endtag%}となるため、ファイル全体で修正します。
  • GitBook特有のコンポーネントはAstroに存在しないため、Markdocのtags設定 (EN)で独自タグとして登録するか、ファイルから削除します。

その他のマイグレーションガイド

貢献する コミュニティ スポンサー