Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
NIP-78 nostr relay storage
Search
Takuma Shinohara
August 04, 2023
Technology
0
170
NIP-78 nostr relay storage
Takuma Shinohara
August 04, 2023
Tweet
Share
More Decks by Takuma Shinohara
See All by Takuma Shinohara
What's is Bluesky
shinoharata
0
420
dissolute fat
shinoharata
0
140
20240520_toranoana_lab.pdf
shinoharata
0
120
民主的なSNSは日本を救う
shinoharata
0
230
Nostr x Gorilla Vim Collaboration
shinoharata
0
330
press_on_nostr_book
shinoharata
0
250
abc2023_slide_upload.pdf
shinoharata
0
250
LNBits で始める 家電Hack
shinoharata
0
170
Blueskyのいろいろ作ってみた
shinoharata
0
220
Other Decks in Technology
See All in Technology
エムスリーマネジメントチーム紹介資料 / Introduction of M3 Management Team
m3_engineering
0
250
Tracking down sources of kernel errors with retsnoop
ennael
PRO
0
150
Strict Concurrencyにしたらdeinitでクラッシュする話
0si43
0
120
AWSへのNIST SP800-171管理策 導入に向けての整備/20240930 Mitsutoshi Matsuo
shift_evolve
0
160
Oracle Database 23ai 新機能#4 Real Application Clusters
oracle4engineer
PRO
0
120
k6を活用した再現性・拡張性の高い負荷試験基盤の構築
biwashi
11
3k
【shownet.conf_】放送局とShowNetが共創する、未来の放送システム ~Media over IP 特別企画の裏側~
shownet
PRO
0
280
OPENLOGI Company Profile
hr01
0
53k
ORM と向き合う
hoto17296
8
6k
【shownet.conf_】持続可能な次世代Wi-Fi運用に向けて
shownet
PRO
0
270
クレジットカードを製造する技術
yutadayo
78
40k
Slackbot × RAG で実現する社内情報検索の最適化
howdy39
2
290
Featured
See All Featured
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.2k
What's in a price? How to price your products and services
michaelherold
243
11k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
504
140k
What's new in Ruby 2.0
geeforr
341
31k
BBQ
matthewcrist
84
9.2k
[RailsConf 2023] Rails as a piece of cake
palkan
49
4.7k
Code Review Best Practice
trishagee
62
16k
The Straight Up "How To Draw Better" Workshop
denniskardys
231
130k
Done Done
chrislema
181
16k
Git: the NoSQL Database
bkeepers
PRO
425
64k
A better future with KSS
kneath
235
17k
Music & Morning Musume
bryan
46
6.1k
Transcript
NIP-78 nostr relay storage 2023/08/04 – t.shinohara
NIP-78
アプリケーション固有データ / 任意のアプリ独自データ 出典:Scrapbox (和訳) https://scrapbox.io/nostr/NIP-78
特徴 出典:Scrapbox (和訳) https://scrapbox.io/nostr/NIP-78 NIP-33 (kind: 30023) の拡張 有名な例 :
Nosli contentや、d以外のタグ利用は何でも OK
リレーをストレージと して使用したいという 思惑? 出典:Scrapbox (和訳) https://scrapbox.io/nostr/NIP-78
Key-value storageとして使え たら便利じゃ ん!!!!!!! 出典:Scrapbox (和訳) https://scrapbox.io/nostr/NIP-78
作った!!!
None
タイムラインの流速を 計測したい
なんで?
タイムラインの流速を 計測したい から
計測データどうする?
Firebase cloud firestore
手間!!!
維持管理!!
なら
リレーに保存しよう 唐突に流れる NIP-78
投げるコードは
殆どが 演習の 1-3
神様ありがとう
どうやって保存してい るの?
データ 構造 const ev = { kind: 30078, content: "none",
tags: [ ["d", "table_name"], ["title", "table_title"], ["t", "table_name"], ["202308041938", "20"], ["202308041938", "17"], ... // 続く ], created_at: currUnixtime(), };
一時的に保存したい データを Post します
僕の使い方
Key-value Storage
なにこれ?
名前:データ で 保存したいものが ひも付きます
Key-value Storage データ 識別名 データ 識別名 データ 識別名 データ 識別名
データ 識別名 データ 識別名 データ 識別名 データ 識別名 データ 識別名 データ 識別名 データ 識別名 データ 識別名 データ 識別名 データ 識別名 データ 識別名 データ 識別名 データ 識別名 データ 識別名 データ 識別名 データ 識別名 データ 識別名 データ 識別名 データ 識別名 データ 識別名
よくある使い方
コード例 const value = getKeyValueStorage(key);
Nostr の NIP-78 使用したライブラリあ るかな?
npm で検索
None
None
None
ないやんけ!!!
作ろ!!
仕 様 検 討 • Key-Values Storage としての利用 • Post
は nostr-tools 等に任せる想定 • 欲しい機能 • DB 初期化 • Get All Table • Get Table • Get Item • Create Table • Insert Table • Update Table • Clear Table
作ってみて
Get Table 便利
Upsert Table 便利
今思っていること
・ Update, Insert 時にテーブルがなかった ら? 自動生成して欲しい ・ テーブルの存在検査をしてから、 テーブル定義を作りたい (なかったら初期化コマンド実行したいなど)
早速つかっています。
野洲田川水系 定点観測所 https://nostr-hotter- site.vercel.app/
None
NIP-78ばり便利