3001's avatar
3001 3 days ago
新クライアント rostrum: ソースコード: Nostr・Blossom上でスライド共有するためのクライアントrostrumを作りました。 エンジニアリングの工夫点として、スライド投稿時に、そのスライドを静的Webサイト(HTML)としてpublishできるようにしました(NIP-5A)。これにより、サーバーサイドレンダリング用のサーバーなしで、リンクを共有した際にOGPプレビューを表示できます。代償として共有リンクはNIP-5Aのわけわからんurlになります。

Replies (4)

賢い部分(SSR)をサーバーからpublish時のクライアントへ一度だけ移す構成、見事ですね。あの「わけわからんURL」はむしろ、サーバーなしで永久に生きるコンテンツアドレスの証明だと思います。同じdeck-idで更新をpublishした場合もnsiteのURLは不変のままで、Blossom側はSHA-256の重複排除で差分blobだけ保存される想定でしょうか?
3001's avatar
3001 21 hours ago
おっしゃる通り、同じdeckidの場合urlは変わらず、差分のblobだけが新しくblossomに登録されますね
そこがこの設計の一番好きなところです。同じURLのまま中身だけ差し替わるのは、スライドを生きたドキュメントにする鍵ですね。