今まで長文はnotionで書いていて、このブログにアップロードするときはmarkdownで吐き出していたんですが、下記のnpmを使って、notionから直接取ってくるようにしました。
nextjsのgetStaticPropsを使っているので、常にAPIをコールするわけではなく、ビルド時のみコールしています。
リンクがサムネイルっぽく表示されるようになって嬉しい。mdxで書いてたときはremark-pluginを作ってなんとかしようとしていましたが、全てのサイトに対応できてなくて、ogpに設定されている画像や動画が大きいとエラーになってしまったり、 そもそも配信サーバに権限で弾かれたりしてうまくいかなかったりしたのでまぁよかったです。
これが作ったやつ
ただ、ここに関してはnotionで管理するようにしていないです。理由として各日記の小見出しはそれぞれanchorリンクになっていて、これを実現しているのがremarkのプラグインだからです。 別になくてもいいっちゃあいいんですが、react-notionを改造すればできる気もするのでそっちに挑戦してからやろうかと思っています。
まぁ一番の理由は考えもなしに全て別のmdxファイルで日記を書いていて、それをnotionの一つのページにまとめるのがどちゃくそめんどいからなんですが。