ActivityPubへの投稿を静的HTMLにも保存しておく

巨大な企業SNSからActivityPubに移住して早3年が過ぎた。完全に移住したわけではなく、世間一般の情報を得るためには巨大な企業SNSの検索機能を使わせてもらっているし、ググればそちらのSNSの投稿はヒットするので、そういう活用の仕方はさせてもらっている。自分の投稿をそちらにアップしなくなっただけだ。 で、ActivityPubのほうにはそれなりに投稿しているのだが、この投稿はGoogleなどの検索エンジンからはクロールできない。ActivityPubのフロントエンドにSoapboxというものを使っているのだが、これはsingle-page application (SPA)、つまりjavaScriptがその都度ActivityPub APIから情報を取得して画面に表示しているため、検索エンジンのBotがクロールしようと思ってもこの機能が動作しないため投稿の中身がクロールできない。 どうしようもないゴミ発言を拾われないのはいいことではあるが、流石に寂しい。 どうしようもないゴミ発言も自分で責任をもって管理したい。そのために自分のドメインで公開しているのだから、検索エンジンくんが欲しいというなら、まあ、提供してもいい。

というかですね。

検索エンジン様に拾っていただかないと、世間からみて生きているかどうかわからない、ということに気づきました。 ごめんなさい。生きています。ゴミ発言ですが拾ってください。

そこで、ActivityPubのRSS feedや、outbox を読み取って静的HTMLとして出力するプログラムを開発した。 https://github.com/king-nomura/feedToHtml Node.jsで動くのでローカルでも、サーバでもわりとどこでも動かせるんじゃないかと思う。 このプログラムの開発にはがっつりとClaude Codeを使った。自分ひとりで作ったものではないのでREADMEにもちゃんと記載した。いや、記載させた。自分で自分のことを書くの恥ずかしかったろ、Claude Code君よ。

とりあえず出力結果はこちら。 → @king_nomuraの投稿

今年はここまで。