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
Blueskyのいろいろ作ってみた
Search
Takuma Shinohara
June 02, 2023
Technology
0
240
Blueskyのいろいろ作ってみた
Takuma Shinohara
June 02, 2023
Tweet
Share
More Decks by Takuma Shinohara
See All by Takuma Shinohara
What's is Bluesky
shinoharata
0
460
dissolute fat
shinoharata
0
170
20240520_toranoana_lab.pdf
shinoharata
0
150
民主的なSNSは日本を救う
shinoharata
0
280
Nostr x Gorilla Vim Collaboration
shinoharata
0
370
press_on_nostr_book
shinoharata
0
260
abc2023_slide_upload.pdf
shinoharata
0
280
LNBits で始める 家電Hack
shinoharata
0
180
NIP-78 nostr relay storage
shinoharata
0
180
Other Decks in Technology
See All in Technology
UI State設計とテスト方針
rmakiyama
2
600
日本版とグローバル版のモバイルアプリ統合の開発の裏側と今後の展望
miichan
1
130
Microsoft Azure全冠になってみた ~アレを使い倒した者が試験を制す!?~/Obtained all Microsoft Azure certifications Those who use "that" to the full will win the exam! ?
yuj1osm
2
110
LINE Developersプロダクト(LIFF/LINE Login)におけるフロントエンド開発
lycorptech_jp
PRO
0
120
どちらを使う?GitHub or Azure DevOps Ver. 24H2
kkamegawa
0
820
【re:Invent 2024 アプデ】 Prompt Routing の紹介
champ
0
150
KubeCon NA 2024 Recap: How to Move from Ingress to Gateway API with Minimal Hassle
ysakotch
0
200
re:Invent 2024 Innovation Talks(NET201)で語られた大切なこと
shotashiratori
0
310
How to be an AWS Community Builder | 君もAWS Community Builderになろう!〜2024 冬 CB募集直前対策編?!〜
coosuke
PRO
2
2.8k
Qiita埋め込み用スライド
naoki_0531
0
5.1k
LINEヤフーのフロントエンド組織・体制の紹介【24年12月】
lycorp_recruit_jp
0
530
複雑性の高いオブジェクト編集に向き合う: プラガブルなReactフォーム設計
righttouch
PRO
0
120
Featured
See All Featured
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.2k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
159
15k
Into the Great Unknown - MozCon
thekraken
33
1.5k
jQuery: Nuts, Bolts and Bling
dougneiner
61
7.5k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
665
120k
Optimizing for Happiness
mojombo
376
70k
A better future with KSS
kneath
238
17k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
38
1.9k
KATA
mclloyd
29
14k
The World Runs on Bad Software
bkeepers
PRO
65
11k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
7k
Transcript
Blueskyのいろいろ つくった話 2023/06/02 – Blueksy/AT Protocol勉強会 #1.5
もくじ • 自己紹介 • The-Blueを作ってみた • Bsky-MassDriverを作ってみた • Bksy-Albumを作ってみた •
Jiho-Botを作ってみた • SkyLog, Sky-highを作ってみた • 今後の展望
自己紹介
Shino3(しのさん) です
Shino3(しのさん) です • プログラマ・エンジニア • 最近はWeb系 • 組み込みソフトウェアが最初 • 2019年からWEB等の業界に
• PHP/Laravelがメイン • 必要に応じてどの言語も書きます
Shino3(しのさん) です • 個人開発:Bluesky, Nostr • 自動車競技など。走ること • スマートフォン・ガジェット等 •
自作キーボードの設計・開発 • 推し:WeatherNews Live 檜山沙耶さん
The Blue つくってみた
Bluesky Client • 何回も紹介させて頂いてるので割愛 • Bluesky Meetup in Tokyo –
first take の 動画を御覧ください
The Blueの問題点 Vue2 Nuxt2
The Blueの問題点 Vue2 Nuxt2 サポートが そろそろ切れそう
The Blueの問題点 • タイムラインの構築 • 投稿・リプ・リポスト、ふぁぼ等・・・ • 通知一覧を表示 • プロフィールや投稿のページを表示
• その他、表示したい情報などの設定
The Blueの問題点 やること多すぎなんよ・・・ • タイムラインの構築 • 投稿・リプ・リポスト、ふぁぼ等・・・ • 通知一覧を表示 •
プロフィールや投稿のページを表示 • その他、表示したい情報などの設定
でも?
Webも Androidも
公式があるやんけ!!
優先度を下げよう!
開発停止!!
Bsky-Massdriver つくってみた
投稿専用 Webクライアント •現在、唯一の機能
投稿専用 Webクライアント • 投稿のみに特化!! • 投稿しかできない!! • すか廃仕様(後ほど言及します) • PWA対応
• 思い立ったら即投稿
投稿専用 Webクライアント •URLクエリパラメータ対応!!
投稿専用 Webクライアント •URLクエリパラメータ対応!! <a href="https://mdrv.shino3.net?intent=%EF%BE%9D%EF%BE%85%EF%BD% A7%EF%BD%9E%21%21%21“ > Blueskyでシェア </a>
投稿専用 Webクライアント •URLクエリパラメータ対応!! <a href="https://mdrv.shino3.net?intent=%EF%BE%9D%EF%BE%85%EF%BD% A7%EF%BD%9E%21%21%21“ > Blueskyでシェア </a>
投稿専用 Webクライアント •URIエンコードってめんどくさい よね??? <a href="https://mdrv.shino3.net?intent=%EF%BE%9D%EF%BE%85%EF%BD% A7%EF%BD%9E%21%21%21“ > Blueskyでシェア </a>
投稿専用 Webクライアント •URLクエリパラメータ対応!! <a href="https://mdrv.shino3.net?intent=%EF%BE%9D%EF%BE%85%EF%BD% A7%EF%BD%9E%21%21%21“ > Blueskyでシェア </a> ここを押せば
シェア一発!
The Blueの問題点より Vue2 Nuxt2 サポートが そろそろ切れそう
The Blueの問題点より • 慣れていたNuxt→Svelteベースに変更 • お勉強と実績作り • TypeScriptに対応
The Blueの問題点より • 慣れていたNuxt→Svelteベースに変更 • お勉強と実績作り • TypeScriptに対応 できた!!!
Bksy-Album つくってみた
自分の投稿画像を追いかけるツール • MassDriverをベースに改造 • ログイン機能をそのまま継承 • 過去3,000件の投稿から画像を抽出 • 投稿の抽出は、SkyLogとかSkyHighの流用(後述)
自分の投稿画像を追いかけるツール • なんでつくったの?
自分の投稿画像を追いかけるツール • なんでつくったの? ノリと勢い!!
自分の投稿画像を追いかけるツール • なんでつくったの? ブルスコに投稿した画像を 追いかけるツールみたいなの無いかな?
自分の投稿画像を追いかけるツール • なんでつくったの? ブルスコに投稿した画像を 追いかけるツールみたいなの無いかな?
自分の投稿画像を追いかけるツール
自分の投稿画像を追いかけるツール
Jiho-bot つくってみた
ほぼ30分おきに時間 を投稿してくれます • JavaScriptでバッチ処理をする練習 • 30分おき
実装 • Momentで現在時刻を取得 • 投稿! • 以上!!
実装 • momentで現在時刻を取得 • 投稿! • 以上!! それだけ!?
設 更 計 変
実装 • momentで現在時刻を取得 • 投稿! • 6分間の間でランダム • →ほぼ時間通りなBotが完成 •
node-cronを使用 • cron→supervisorに変更
実装 デバッグが簡単 になった!!!
実装 だいじ!!
SkyLog SkyHigh つくってみた
一日一回、投稿数を集計します
なんでつくったの? • 自分の投稿数、気になるな・・・・? • なんかめっちゃ、つぶやく人おる • この人いつもTLで見かけるじゃん
なんでつくったの? • 自分の投稿数、気になるな・・・・? • なんかめっちゃ、つぶやく人おる • この人いつもTLで見かけるじゃん 作るわ!!
実装 • 過去の投稿を3,000件遡る • 1回のGetリクエストで最大100件まで取得可能 フォロワー一覧 指定ユーザーの投稿一覧 •
Cursolを使って再帰処理 • 日付で判定して、24時間ぶん集計する
実装 • 過去の投稿を3,000件遡る • 1回のGetリクエストで最大100件まで取得可能 フォロワー一覧 指定ユーザーの投稿一覧 •
Cursolが取れるので再帰処理を実装 • 日付で判定して、24時間ぶん集計する クライアント作った経験が 役に立ったヮ
結果
結果
ぬるぽ
結果
結果
結果
結果
結果
結果 廃人が増え た!!
おまけ
Weather News Live タイムスケジュールBot
Stream系の実装に関して調査
Stream系の実装に関して調査