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
330
0
Share
Blueskyのいろいろ作ってみた
Takuma Shinohara
June 02, 2023
More Decks by Takuma Shinohara
See All by Takuma Shinohara
Bluesky Meetup in Tokyo vol.4 - 2023to2026
shinoharata
0
200
MCPとは?
shinoharata
0
140
BlueskyMeetup in Fukuoka アイデアソン
shinoharata
1
130
BlueskyMeetup in Fukuoka アイデアソン結果発表
shinoharata
1
110
いまのBlueskyってどうなの
shinoharata
0
160
四谷ラボとは ※2025/05/31
shinoharata
0
160
What's is Bluesky
shinoharata
0
2k
dissolute fat
shinoharata
0
250
20240520_toranoana_lab.pdf
shinoharata
0
250
Other Decks in Technology
See All in Technology
研究開発部メンバーの働き⽅ / Sansan R&D Profile
sansan33
PRO
4
23k
Shipping AI Agents — Lessons from Production
vvatanabe
0
230
Keeping Ruby Running on Cygwin
fd0
0
150
AzureのIaC管理からログ調査まで、随所に役立つSkillsとCustom-Instructions / Boosting IaC and Log Analysis with Skills
aeonpeople
0
230
AI バイブコーティングでキーボード不要?!
samakada
0
560
名刺メーカーDevグループ 紹介資料
sansan33
PRO
0
1.1k
Oracle AI Database@AWS:サービス概要のご紹介
oracle4engineer
PRO
4
2.3k
ネットワーク運用を楽にするAWS DevOps Agent活用法!! / 20260421 Masaki Okuda
shift_evolve
PRO
2
210
みんなの「データ活用」を支えるストレージ担当から持ち込むAWS活用/コミュニティー設計TIPS 10選~「作れる」より、「続けられる」設計へ~
yoshiki0705
0
250
データを"持てない"環境でのアノテーション基盤設計
sansantech
PRO
1
120
実践ハーネスエンジニアリング:TAKTで実現するAIエージェント制御 / Practical Harness Engineering: AI Agent Control Enabled by TAKT
nrslib
11
4.5k
ハーネスエンジニアリングをやりすぎた話 ~そのハーネスは解体された~
gotalab555
4
1.7k
Featured
See All Featured
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
How to Think Like a Performance Engineer
csswizardry
28
2.5k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.8k
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
130
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
260
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
210
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
2.8k
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
1
1.2k
AI: The stuff that nobody shows you
jnunemaker
PRO
6
570
Fireside Chat
paigeccino
42
3.9k
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
340
Designing for Timeless Needs
cassininazir
0
190
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系の実装に関して調査