先日考えていたipfs対応新ブログについては本文をマークダウン記述でipfs上に階層構造で保存して、それとは別に静的ブログに変換したキャッシュを同じくマークダウンに置くというのが形上はよいと思ったので、いろいろ試してみた。

記事個々は小ディレクトリに置いて、本文はindex.mdで書く。各記事の画像は小ディレクトリの中に配置することで個々の記事にcidを設定できる形にする。

それ全体をまとめたディレクトリをルート記事ディレクトリとする。

それとは別にそれらの記事mdを読み込んで静的サイトをビルドしてそれをまたipfsに配置する。

すでにあらかたできてたNuxt/Contentベースのプロジェクトで上記を実現するのに、Nuxt/Contentをカスタマイズして、ipfsから直接mdのツリーを読み込んで静的サイトをビルドするように修正。とりあえずは動くところまで行ったと。

現時点 https://bafybeigkbcll4kizopo5v7wtbnvcouttreb6aptql74aapnruxhwo5dvca.ipfs.dweb.link/ に公開中。ipfsマークをクリックすると基のipfsディレクトリやマークダウンを表示します(ラズパイ上のデプロイなので外部からは遅いかも。。。)

とりあえずごそごそやってここまでは出来たものの、まだipfs直書き出しや履歴の自動管理まではまだまだ。

html部分はiframeとかでipfs側に保存したマークダウンを直接表示できるとコンテンツ的には整合した話になるのだが、今の時代にReact的ツールを使わないとかいう形はそぐわないので、キャッシュhtmlが冗長になってもこういうスタイルのほうがよいような気がする。

遅いとか冗長とかいう問題は技術改善によってどうにでもなる話なのでそこは気にしないのだが、md部分の編集管理/履歴管理はシンプル化しないとつらい部分があるな。

そこがうまく回るようになったらDNSLinkの管理方法も考えた上でブログ移行かな。