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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Hong Minhee (洪 民憙)
November 22, 2024
Programming
1
89
Fedify — ActivityPub 서버 프레임워크
Open Contribution Jam 2024에서 Fedify 프로젝트에 대한 소개
Hong Minhee (洪 民憙)
November 22, 2024
Tweet
Share
More Decks by Hong Minhee (洪 民憙)
See All by Hong Minhee (洪 民憙)
Fedify: Building ActivityPub servers without the pain
minhee
0
16
Optique: TypeScript의 타입 추론으로 CLI 유효성 검사를 대체하기
minhee
0
34
야크 셰이빙: 새로운 오픈 소스의 원동력
minhee
0
27
Embracing yak shaving
minhee
1
22
BotKit by Fedify:誰でも簡単に作れるActivityPubボット
minhee
0
160
国漢文混用体からHolloまで
minhee
2
500
여러 .NET 구현과 플랫폼을 두루 지원하는 라이브러리 (오픈 소스로) 만들기
minhee
3
1.1k
첫 이더리움 스마트 콘트랙트 개발 이야기
minhee
1
1.3k
파이썬과 다이아스포라
minhee
3
2.4k
Other Decks in Programming
See All in Programming
Agentic AI: Evolution oder Revolution
mobilelarson
PRO
0
110
文字コードの話
qnighy
44
17k
maplibre-gl-layers - 地図に移動体たくさん表示したい
kekyo
PRO
0
200
AHC061解説
shun_pi
0
340
Codex の「自走力」を高める
yorifuji
0
1k
Railsの気持ちを考えながらコントローラとビューを整頓する/tidying-rails-controllers-and-views-as-rails-think
moro
4
380
AI活用のコスパを最大化する方法
ochtum
0
120
株式会社 Sun terras カンパニーデック
sunterras
0
2k
What Spring Developers Should Know About Jakarta EE
ivargrimstad
0
260
朝日新聞のデジタル版を支えるGoバックエンド ー価値ある情報をいち早く確実にお届けするために
junkiishida
1
390
受け入れテスト駆動開発(ATDD)×AI駆動開発 AI時代のATDDの取り組み方を考える
kztakasaki
2
540
CSC307 Lecture 14
javiergs
PRO
0
450
Featured
See All Featured
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
122
21k
Code Review Best Practice
trishagee
74
20k
Joys of Absence: A Defence of Solitary Play
codingconduct
1
300
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
200
Faster Mobile Websites
deanohume
310
31k
A Soul's Torment
seathinner
5
2.4k
The World Runs on Bad Software
bkeepers
PRO
72
12k
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
180
How to Ace a Technical Interview
jacobian
281
24k
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
61
52k
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
96
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.4k
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