Markdown形式のドキュメントをまとめてGraphQL APIに。
GitHubリポジトリにpushするだけで簡単更新。
ヘッドレスCMSのように使って快適なコンテンツ管理。
GitHubリポジトリを用意して、以下のようなMarkdown形式のファイルをpushしておきます。
--- draft: false emoji: 🌻 title: 日記 slug: diary published_at: 1989-12-07 00:00:00 modified_at: 1989-12-07 00:00:00 tags: - 日記 preview: null --- ## 日記 今日はいい天気でした。
GitHub App をインストールします。
この時、はじめに用意したリポジトリにHacker Sheetからのアクセス許可を付与します。
ワークスペースを作成してリポジトリと連携します。
これで GraphQL で Markdown の内容を取得できるようになります 🎉
// GraphQLクエリ例
{
  document(slug: "diary"){
    id
    draft
    emoji
    title
    slug
    publishedAt
    modifiedAt
    tags {
      edges {
        node {
          id
          name
        }
      }
    }
    preview {
      id
      path
    }
  }
}// GraphQLレスポンス例
{
  "data": {
    "document": {
      "id": "doc_LMaOERm60EaRS5G0kwNG8npq",
      "draft": false,
      "emoji": "🌻",
      "title": "日記",
      "slug": "diary",
      "publishedAt": "1989-12-06T15:00:00.000000Z",
      "modifiedAt": "1989-12-06T15:00:00.000000Z",
      "content": "## 日記\n\n今日はいい天気でした。\n",
      "preview": null,
      "tags": {
        "edges": [
          {
            "node": {
              "id": "tag_4RPvYVw3ByjLpIANe61JQO7o",
              "name": "日記"
            }
          }
        ]
      }
    }
  }
}