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
Fedify — ActivityPub 서버 프레임워크
Search
Hong Minhee (洪 民憙)
November 22, 2024
Programming
100
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Fedify — ActivityPub 서버 프레임워크
Open Contribution Jam 2024에서 Fedify 프로젝트에 대한 소개
Hong Minhee (洪 民憙)
November 22, 2024
More Decks by Hong Minhee (洪 民憙)
See All by Hong Minhee (洪 民憙)
Gukhanmun: 國漢文을 한글로 바꾸기
minhee
0
28
Nobody's job, everybody's problem: F/OSS in the age of AI
minhee
0
38
Fedify: Building ActivityPub servers without the pain
minhee
0
45
Optique: TypeScript의 타입 추론으로 CLI 유효성 검사를 대체하기
minhee
0
61
야크 셰이빙: 새로운 오픈 소스의 원동력
minhee
0
63
Embracing yak shaving
minhee
1
56
BotKit by Fedify:誰でも簡単に作れるActivityPubボット
minhee
0
200
国漢文混用体からHolloまで
minhee
2
670
여러 .NET 구현과 플랫폼을 두루 지원하는 라이브러리 (오픈 소스로) 만들기
minhee
3
1.1k
Other Decks in Programming
See All in Programming
React本体のコードリーディング
high_g_engineer
1
140
170k Jobs a Day on GKE: Scaling Mercari's CI Platform - and What's Next for AI-Native Development
junyaokabe
0
110
AIを紡ぐPMのお話
swdtkuy
0
110
テーブルをDELETEした
yuzneri
0
140
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
590
ソフトウェア設計に溶けるインフラ ― AWS CDK のインフラ認識論
konokenj
3
790
<title><a id="</title>君はこのHTMLをパースできるか"></a></title> #雑LT_study
pizzacat83
0
140
PHP初心者セッション2026 〜生成AIでは見えない裏側を知る:今だからLAMPを通して仕組みを学ぶ〜
kashioka
0
930
生成AI導入の「期待外れ」を乗り越える ー 開発フロー改革が目指す、真の組織変革
starfish719
0
4.4k
ITヒヤリハットを整理してみた ~ライフサイクルと原因から考える再発防止策~
koukimiura
1
140
VibeCodingからAgenticWorkflowへ
starfish719
0
480
freee が目指す データ マネジメント戦略 AI-Ready 時代を支える 攻めのガバナンスとは
freee
PRO
0
370
Featured
See All Featured
The Language of Interfaces
destraynor
162
27k
YesSQL, Process and Tooling at Scale
rocio
174
15k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
Tell your own story through comics
letsgokoyo
1
1k
Typedesign – Prime Four
hannesfritz
42
3.1k
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
73
41k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
470
Technical Leadership for Architectural Decision Making
baasie
3
480
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
1.2k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
3k
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.4k
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
540
Transcript
ഘ൞ (hongminhee.org) Fedify ActivityPub ࢲߡ ۨਕ
ࣗ࣍ ٣য അ ঔഋ ۖಬ ೠ҅ • ױੌ ӝস Ѿী
ઓ • Twitter → X۽ ߸҃ • Facebook झ ରױ (ഐ·நա) • ࢲ࠺झ р ࣗా ࠛоמ • Facebook ࢎਊח X ѱदޛী ؆Ӗਸ ׳ ࣻ হ • Instagram ࢎਊח YouTube ز࢚ী ߈ਸ թӡ ࣻ হ • цझ۞ ࢲ࠺झ ױ • Google+ ઙܐ (2019֙) • Vine ઙܐ (2016֙)
ಕ٣ߡझ(fediverse)ۆ? ఎঔചػ ࣗ࣍ ٣য ࣁ҅ • Fediverse = federated +
universe • ೠҴীࢲח “ো”ۄҊب ࠛܿ • ݫੌۢ زೞח ࣗ࣍ ٣য • @
[email protected]
↔ @
[email protected]
• ־ҳա न ࢲߡܳ оמ • ݃ী ٘ח ࢲߡܳ ࢶఖ೧ оੑ • ܲ ࢲߡ ࢎਊٜҗ ਬ܂ѱ ࣗా
ಕ٣ߡझ അ নೠ ࢲ࠺झٜ ೞա۽ োѾ • Mastodon • о
ੋӝ ח ݃۽࠶۽Ӓ (ಕ٣ߡझ౸ X) • 800݅ ࢎਊ • Meta Threads • Instagramҗ োز • ӝఋ ࢲ࠺झٜ • Pixelfed (ࢎ, ಕ٣ߡझ౸ Instagram) • PeerTube (ز࢚, ಕ٣ߡझ౸ YouTube) • Lemmy (ನۢ, ಕ٣ߡझ౸ Reddit)
ಕ٣ߡझ അ নೠ ࢲ࠺झٜ ೞա۽ োѾ • Mastodon • о
ੋӝ ח ݃۽࠶۽Ӓ (ಕ٣ߡझ౸ X) • 800݅ ࢎਊ • Meta Threads • Instagramҗ োز • ӝఋ ࢲ࠺झٜ • Pixelfed (ࢎ, ಕ٣ߡझ౸ Instagram) • PeerTube (ز࢚, ಕ٣ߡझ౸ YouTube) • Lemmy (ನۢ, ಕ٣ߡझ౸ Reddit)
ActivityPub ࣗѐ ಕ٣ߡझܳ оמೞѱ ೞח ળ • W3C ળ ۽ష
(2018֙ थੋ) • Social Web Working Group Ѿҗޛ • JSON-LD ӝ߈ ഛ оמೠ যൃ { "@context": "https: / / www.w3.org/ns/activitystreams", "type": "Note", "content": "Hello, World!", "to": "https: / / www.w3.org/ns/activitystreams#Public" }
ActivityPub ӝࣿ ౠ ঘఠ৬ ঘ౭࠺౭ • ݽٚ ࢚ഐਊ ঘ౭࠺౭۽ അؽ
• Ӗॳӝ → Create(Note) • ౹۽ → Follow • જইਃ → Like • HTTP۽ ాन • п ঘఠח Ҋਬೠ ࣻनೣ(inbox)ਸ о • ࢲݺػ HTTP POST ਃਵ۽ ׳
ActivityPub ࢲߡ ҳഅ য۰ ৵ Fedifyо ਃೠо • ࠂೠ ۽ష
• WebFinger, HTTP Signatures, JSON-LD… • ࠁউ ҳഅ য۰ • ࢲݺ Ѩૐ, ః ҙܻ, ӂೠ ഛੋ… • ࢚ഐਊࢿ • Mastodon ١җ ഐജࢿ • ҳഅ߹ ର
Fedify ࣗѐ TypeScript/JavaScript۽ ݅٘ח ಕ٣ߡझ federation.setActorDispatcher("/users/{identifier}", async (ctx, identifier) =
> { return new Person({ id: ctx.getActorUri(identifier), name: "John Doe", preferredUsername: identifier, inbox: ctx.getInboxUri(identifier), }); }); • Node.js, Deno, Bun ਗ • Express, Fresh, Hono ١ ۨਕ৬ ా
Fedify উೞҊ Ѩૐػ ҳഅ • ఋੑ উࢿ • TypeScript
ъ۱ೠ ఋੑ दझమ • ۠ఋ য়ܨ ߑ • ࠁউ ӝמ ղ • HTTP Signatures, Linked Data Signatures, Object Integrity Proofs… • ః ҙܻ زച • ࢚ഐਊࢿ Ѩૐ • Mastodon, Misskey, Threads…
য়ט ೣԋ ӝৈ೧ࠁӝ ۄب ҡଳইਃ • ۠ Ѫٜਸ ೧ࠅ ࣻ
णפ • ޙࢲ ѐࢶೞӝ • ઁ ٘ ࢿೞӝ • పझ ୶оೞӝ • ߡӒ ࣻೞӝ
য়ט ೣԋ ӝৈ೧ࠁӝ ۄب ҡଳইਃ • ೣԋ ب৬٘݀פ • ѐߊ
ജ҃ ࢸ • ग Ҋܰӝ • ٘ ࢿ • ಽ ܻ௮झ ઁ
ݛ݈ ೣԋ ݅٘ח ఎঔചػ ࣗ࣍ ٣য • GitHub: https://github.com/dahlia/fedify •
ޙࢲ: https://fedify.dev/ • Discord: https://bit.ly/fedify-discord