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
Nostrでウェブサイトをホスティングできる仕組みを作った(新時代の分散型SNS勉強会 202...
Search
kaiji
December 08, 2023
0
350
Nostrでウェブサイトをホスティングできる仕組みを作った(新時代の分散型SNS勉強会 2023/12/09)
kaiji
December 08, 2023
Tweet
Share
More Decks by kaiji
See All by kaiji
What is Nostr Other Stuff?
studiokaiji
0
210
Hostr - Decentralized Web Hosting Solution on Nostr
studiokaiji
0
260
Featured
See All Featured
The Language of Interfaces
destraynor
158
25k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
44
2.4k
Art, The Web, and Tiny UX
lynnandtonic
299
21k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
233
17k
Typedesign – Prime Four
hannesfritz
42
2.7k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Agile that works and the tools we love
rasmusluckow
329
21k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
A designer walks into a library…
pauljervisheath
207
24k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Code Review Best Practice
trishagee
68
18k
Docker and Python
trallard
44
3.4k
Transcript
Nostrでウェブサイトをホスティングできる仕組みを作った Hostr Written By: kaiji 2023/12/08
kaiji
[email protected]
@studiokaiji @studiokaiji 自己紹介
01 Hostrとは?
Hostrとは? Nostrを使った分散型のウェブホスティングソリューション WebサイトをNostrのリレー上に記録し、ホスティングができる仕組みi HTML、CSS、JS等のウェブサイトの基本ファイルに加え、SVGやJSONといったテキスト ファイルをEventとして記録するi この仕組みを使いやすくするためのコマンドラインツール「Hostr CLI」もリリース済み。
02 Hostr・Hostr CLIの機能
Hostr・Hostr CLIの機能 1コマンドで、すぐにデプロイ $ hostr deploy --path=/BUILT/SPA/DIR/PATH --identifier=hostr-lp ビルド済みのウェブサイトの データのパス
サイトの識別子 (replaceable events用)
Hostr・Hostr CLIの機能 今すぐ利用できるリレー・ウェブサーバー ウェブホスティングのために構築された公開リレーとウェブサーバーで、誰でも今すぐ分散型ウェブホスティ ングが可能に。 リレー wss://r.hostr.cc ウェブサーバー [npub] https://h.hostr.cc,
https:// .hostr.cc
Hostr・Hostr CLIの機能 セキュアアクセス localstorageやNIP-07などを利用している、ドメインに依存したウェブサイトでも、npubをサブドメインに することで、安全にHostrサイトを利用可能。 通常イベント https://h.hostr.cc/e/[nevent] セキュアアクセスイベント https:// .hostr.cc/e/
[npub] [nevent]
03 アーキテクチャ
アーキテクチャ フロー 開発者 リレー サーバー ユーザー SPAを記録した Eventを送信 Eventを返却 サイトの
データを返す サイトとして 読み取り可能な データに変換 ウェブサイトへの 取得リクエスト Eventを取得
仕様(NIP-106 PR ベース) 識別子 通常イベンB 7 nevent *ただしHostrのサーバーでは 通常のevent
idもサポート 置き換え可能なイベンB 7 dタグ 通常イベンB HTML: 539 CSS: 539x JS: 539 Others: 1064,1065 置き換え可能なイベンB HTML: 3539 CSS: 3539x JS: 3539 Others: 30064,30065 kind アーキテクチャ
04 パフォーマンス
パフォーマンス 初回読み込み Hostr + nostr-rs-relay Express.js サーバー IPFS(Kubo) 0 500
1500 3500 5000 4.12 s 622 ms 412 ms Server, Relay: Client: Tokyo Fukushima IPFS ノードと Nostr リレーは、それぞれのゲートウェイおよびサーバーとは別のインスタンス上で実行され、 インターネット経由で接続されますr IPFS は DHT を使用して検索を実行するため、数値はかなり変化します。あくまでも一例としてご覧ください。
05 これから実装・応用したいこと
これから実装・応用したいこと セキュアイベント u 現在のHostrでは、セキュアルートでのアクセスをサイト作成者が強制できないf u Nostrクライアントをはじめとした、セキュアルートでのアクセスが必須なサイトの実装には不向きf u eventのタグに onlySecure 属性を付け、値が
true だった場合、セキュアルート(npubがサブドメインのルート)にリ ダイレクトするf u セキュアイベントに対応していないウェブサーバーの場合はHTTPリクエストエラーを返す。
これから実装・応用したいこと Nostr CMS Nostr上で動くWordPressのようなCMSs 長文投稿とアプリケーション固有データを管理s 柔軟な書き込みルールを備えた公開データベースs
Hostrサイトをノーコードで構築可能s Nostr上で全て動作。
Ready to Use Relay Nostr Native Hostable Any SPA Secure
Access Faster than IPFS*1 660% Hostr nostr-webhost Replaceable Event Built-in Web Server *1. 開発者の環境での計測