Avatar
darashi
07804b786c6a3b400b7b20d9bfc945035f3ad213da797b0c50954767c375c543
I built Nostrasia timeline https://darashi.github.io/nostrasia2024/ nos.today https://nos.today searchnos https://github.com/darashi/searchnos nostrbuzzs https://nostrbuzzs.deno.dev/

せったーっぷ

これが後世の歴史家によって「歌ってみた」の起源として記されることになろうとは、そのとき誰も思っていなかったのであった。

https://nostrbuzzs.deno.dev/ も なまずくん 捕捉しています

じほうちゃんを時間ずらしてリポスト(もう4時か)

kind1 でも #[0] みたいになってることあるし、他の event も入れるなら検索用の property 作ったほうがよさそう

Rust の練習をしたくて Rust で書いてみたけれど、 searcher は特に TypeScript で書いて Deno deploy に置くとかのほうが取り回しがよかったような気はしている

あっすみません、最後の確認ボタン押してなかったです😂

Elasticsearch をバックエンドにして、 NIP-50 に対応した kind1 の全文検索機能を提供するリレー風サーバの実装が動くようになってきました 。

https://github.com/darashi/searchnos

Elasticsearch に対してポーリングすることで、リアルタイム検索をエミュレートします。フロントエンドを用意して繋げばリアルタイム検索ができるはず(まだ試してない)。

simple_query_string https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-simple-query-string-query.html を使えるので、

```

echo '["REQ", "_", {"search": "鰻|うなぎ"}]' | nostcat --stream ws://127.0.0.1:3333

````

みたいな検索ができます。

通常のリレーとは違って、複数のリレーにクライアントとして接続しにいって kind1 と kind5 を収集します。

Elasticsearch をバックエンドにしたフル機能の Relay というのも面白そうだけど、大変そうっすねえ。

犯人はテス

おはのすたろう

ノスから生まれたノス太郎

Nostr はプロトコルで、任意のペイロードをやり取りできる。だから、 kind1 に限らず relay を介してサービス同士が会話しあう、みたいな世界観がおもしろそう。

Relay に post の ID 集合を保持しておくようなプロトコルをうまいこと設計すれば、独自のバックエンドは不要でまとめサイトもつくれるのでは?

https://nostrbuzzs.deno.dev/ nostrbuzzs では、解析バックエンドから Web フロントエンドに結果を渡すときに NIP-33 を使って relay 経由でやりとりしています。

今までは relay.damus.io だけを使っていたのですが、時々落ちていることがあるようなので、 nos.lol も使うようにして冗長化してみました。なるほど可用性。

👏👏👏👏👏👏👏👏 #nostrstudy

ばずったー的ものを作っています...! よろしければご覧ください〜 https://nostrbuzzs.deno.dev/ #nostrstudy

nostrbuzzs つくってみました https://nostrbuzzs.deno.dev/