Fedify: an ActivityPub server framework's avatar

Fedify: an ActivityPub server framework

@fedify@hollo.social · 8 following · 724 followers

:fedify: Fedify is a TypeScript library for building federated server apps powered by ActivityPub and other standards, so-called fediverse. It aims to eliminate the complexity and redundant boilerplate code when building a federated server app, so that you can focus on your business logic and user experience.

Fedify: an ActivityPub server framework's avatar
Fedify: an ActivityPub server framework

@fedify@hollo.social

🎉 Excited to announce that is now on Open Collective! Support the project's development starting at:

  • Backer (from $5/mo)
  • Supporter (from $25/mo)
  • Sponsor (from $100/mo)
  • Corporate Sponsor (from $500/mo)
  • Custom donations welcome

Your support will help us maintain and improve Fedify. Check it out here:

https://opencollective.com/fedify

:fedify:

Fedify's Open Collective page showing the project logo, description as “A TypeScript library for building federated server apps powered by ActivityPub and other standards”, and five contribution tiers starting from $5/month Backer to $500/month Corporate Sponsor, with custom contribution options available.
ALT text detailsFedify's Open Collective page showing the project logo, description as “A TypeScript library for building federated server apps powered by ActivityPub and other standards”, and five contribution tiers starting from $5/month Backer to $500/month Corporate Sponsor, with custom contribution options available.
Fedify: an ActivityPub server framework's avatar
Fedify: an ActivityPub server framework

@fedify@hollo.social

Fedify is an server framework in & . It aims to eliminate the complexity and redundant boilerplate code when building a federated server app, so that you can focus on your business logic and user experience.

The key features it provides currently are:

If you're curious, take a look at the website! There's comprehensive docs, a demo, a tutorial, example code, and more:

https://fedify.dev/

面条's avatar
面条

@mt@c.im · Reply to 洪 民憙 (Hong Minhee)'s post

@hongminhee

totegamma's avatar
totegamma

@totegamma@denken.concrnt.net

白背景が抜かれてしまっているが、一応弊インスタンスも(-b付きで)fetchできるようになった b付きじゃなくてもいけるように整えていくぞ

Fedify: an ActivityPub server framework's avatar
Fedify: an ActivityPub server framework

@fedify@hollo.social · Reply to Fedify: an ActivityPub server framework's post

If Fedify's docs should be translated, what languages should it be in?

OptionVoters
简体中文4 (7%)
Español4 (7%)
Português6 (11%)
Français5 (9%)
Русский5 (9%)
हिन्दी4 (7%)
Bahasa Indonesia5 (9%)
日本語13 (23%)
اَلْعَرَبِيَّةُ4 (7%)
한국어7 (12%)
Fedify: an ActivityPub server framework's avatar
Fedify: an ActivityPub server framework

@fedify@hollo.social

What are your thoughts on Fedify's docs?

OptionVoters
Comprehensive and easy to understand4 (67%)
Comprehensive but hard to understand0 (0%)
Limited but easy to understand1 (17%)
Limited and hard to understand1 (17%)
Fedify: an ActivityPub server framework's avatar
Fedify: an ActivityPub server framework

@fedify@hollo.social

Visualize your server in the fediverse with the fedify node command and share it with us using the hashtag!

(See also how to install the fedify command.)

The result of fedify node https://hollo.social/@fedify command. The NodeInfo document is visualized along with the favicon.
ALT text detailsThe result of fedify node https://hollo.social/@fedify command. The NodeInfo document is visualized along with the favicon.
The result of fedify lookup venera.social. The NodeInfo document is visualized along with the favicon.
ALT text detailsThe result of fedify lookup venera.social. The NodeInfo document is visualized along with the favicon.
The result of fedify lookup misskey.io. The NodeInfo document is visualized along with the favicon.
ALT text detailsThe result of fedify lookup misskey.io. The NodeInfo document is visualized along with the favicon.
The result of fedify lookup fosstodon.org. The NodeInfo document is visualized along with the favicon.
ALT text detailsThe result of fedify lookup fosstodon.org. The NodeInfo document is visualized along with the favicon.
猫茶🍵's avatar
猫茶🍵

@nekocha@fedibird.com

いろんな鯖さんのfaviconを描画したくてついにfedifyをインストールした :blob_dancefloor:
楽しい!かわいい :blob_lovepunch:

Caipira's avatar
Caipira

@caipira113@stella.place


로고 출력 은근 잘 나왔다.

Ch. :animal_feed_trickcal:'s avatar
Ch. :animal_feed_trickcal:

@sftblw@lake.naru.cafe · Reply to Ch. :animal_feed_trickcal:'s post

🤔
미스키 / 체리픽 안 됨

Porlam's avatar
Porlam

@grapeapple@misskey.04.si

:ablobaww:

Ch. :animal_feed_trickcal:'s avatar
Ch. :animal_feed_trickcal:

@sftblw@lake.naru.cafe



파비콘을 이미지화해주는군요

fosstodon.org/@hongminhee/113401254560735839

Charles Chin's avatar
Charles Chin

@eallion@e5n.cc


fedify node -b e5n.cc

fedify.dev/cli#fedify-node-vis

fedify node command
ALT text detailsfedify node command
NTSK's avatar
NTSK

@nt776@sv1.in-deep.blue

:neocat_googly:

洪 民憙 (Hong Minhee)'s avatar
洪 民憙 (Hong Minhee)

@hongminhee@fosstodon.org

여러분의 인스턴스를 `fedify node` 커맨드를 써서 `neofetch` 스타일로 비주얼라이즈 해보고, 해시태그와 함께 올려보세요!

`fedify` 커맨드를 깔려면 아래 링크에 적힌대로 따라하시면 됩니다!

fedify.dev/cli#installation

`fedify node -b misskey.io` 커맨드의 아웃풋.
ALT text details`fedify node -b misskey.io` 커맨드의 아웃풋.
`fedify node -b venera.social` 커맨드의 아웃풋.
ALT text details`fedify node -b venera.social` 커맨드의 아웃풋.
`fedify node https://hollo.social/@fedify` 커맨드의 아웃풋.
ALT text details`fedify node https://hollo.social/@fedify` 커맨드의 아웃풋.
`fedify node fosstodon.org` 커맨드의 아웃풋.
ALT text details`fedify node fosstodon.org` 커맨드의 아웃풋.
const c30 = "せど";'s avatar
const c30 = "せど";

@c30@mk.c30.life

c30's avatar
c30

@c30@misskey.art

^Kur0den\d{4}$ :irai_houki_tyuu:'s avatar
^Kur0den\d{4}$ :irai_houki_tyuu:

@kur0den0010@chpk.kur0den.net

➜  ~ fedify node -b chpk.kur0den.net
✔ NodeInfo document fetched.
chpk.kur0den.net
================
Software:
  cherrypick v4.12.0
  https://github.com/kokonect-link/cherrypick
  https://github.com/kokonect-link/cherrypick
Protocols:
  activitypub
Outbound services:
  atom1.0
  rss2.0
Users:
  8 (total)
Local posts:
  41,891
Local comments:
  0
Open registrations:
  No

洪 民憙(ホン・ミンヒ)'s avatar
洪 民憙(ホン・ミンヒ)

@hongminhee@fedibird.com

皆さんのフェディバース上のサーバーを`fedify node`コマンドで可視化して「」ハッシュタグで共有してください!
QT: hollo.social/@fedify/0192e1c1-
[参照]

Fedify: an ActivityPub server framework's avatar
Fedify: an ActivityPub server framework

@fedify@hollo.social

Visualize your server in the fediverse with the fedify node command and share it with us using the hashtag!

(See also how to install the fedify command.)

The result of fedify node https://hollo.social/@fedify command. The NodeInfo document is visualized along with the favicon.
ALT text detailsThe result of fedify node https://hollo.social/@fedify command. The NodeInfo document is visualized along with the favicon.
The result of fedify lookup venera.social. The NodeInfo document is visualized along with the favicon.
ALT text detailsThe result of fedify lookup venera.social. The NodeInfo document is visualized along with the favicon.
The result of fedify lookup misskey.io. The NodeInfo document is visualized along with the favicon.
ALT text detailsThe result of fedify lookup misskey.io. The NodeInfo document is visualized along with the favicon.
The result of fedify lookup fosstodon.org. The NodeInfo document is visualized along with the favicon.
ALT text detailsThe result of fedify lookup fosstodon.org. The NodeInfo document is visualized along with the favicon.
Fedify: an ActivityPub server framework's avatar
Fedify: an ActivityPub server framework

@fedify@hollo.social

Visualize your server in the fediverse with the fedify node command and share it with us using the hashtag!

(See also how to install the fedify command.)

The result of fedify node https://hollo.social/@fedify command. The NodeInfo document is visualized along with the favicon.
ALT text detailsThe result of fedify node https://hollo.social/@fedify command. The NodeInfo document is visualized along with the favicon.
The result of fedify lookup venera.social. The NodeInfo document is visualized along with the favicon.
ALT text detailsThe result of fedify lookup venera.social. The NodeInfo document is visualized along with the favicon.
The result of fedify lookup misskey.io. The NodeInfo document is visualized along with the favicon.
ALT text detailsThe result of fedify lookup misskey.io. The NodeInfo document is visualized along with the favicon.
The result of fedify lookup fosstodon.org. The NodeInfo document is visualized along with the favicon.
ALT text detailsThe result of fedify lookup fosstodon.org. The NodeInfo document is visualized along with the favicon.
poes :pla:'s avatar
poes :pla:

@poes@kauaku.us

#fedify

minat tapi kayaknya terlalu overkill untuk 1 user instance, butuh postgres, redis dll.

Fedify CLI : node info for kauaku.us
ALT text detailsFedify CLI : node info for kauaku.us
洪 民憙(ホン・ミンヒ)'s avatar
洪 民憙(ホン・ミンヒ)

@hongminhee@fedibird.com

misskey.ioに対するfedify nodeコマンドの出力結果。

洪 民憙 (Hong Minhee)'s avatar
洪 民憙 (Hong Minhee)

@hongminhee@fosstodon.org

It's the output of the fedify node command for fosstodon.org.

The output of the fedify node command for fosstodon.org.
ALT text detailsThe output of the fedify node command for fosstodon.org.
aliceif's avatar
aliceif

@aliceif@mkultra.x27.one

post your neofetch fedify node outputs!
https://fedify.dev/cli

console output for fedify node mkultra.x27.one -b
on the left, an ascii art version of the lily flowers server icon
on the right, information
Software:
  misskey v2024.10.1
  https://misskey-hub.net/
Protocols:
  activitypub
Outbound services:
  atom1.0
  rss2.0
Users:
  17 (total)
Local posts:
  8,559
Local comments:
  0
Open registrations:
  No
ALT text detailsconsole output for fedify node mkultra.x27.one -b on the left, an ascii art version of the lily flowers server icon on the right, information Software: misskey v2024.10.1 https://misskey-hub.net/ Protocols: activitypub Outbound services: atom1.0 rss2.0 Users: 17 (total) Local posts: 8,559 Local comments: 0 Open registrations: No
Fedify: an ActivityPub server framework's avatar
Fedify: an ActivityPub server framework

@fedify@hollo.social

The version 1.2.0 of , an server framework, released! The key changes include:

For details, see the full changelog as well!

Fedify 1.2.0 is available at JSR and npm.

Fedify: an ActivityPub server framework's avatar
Fedify: an ActivityPub server framework

@fedify@hollo.social

Starting with the next release of , v1.2.0, we will support traceable logs for easier debugging. Fedify's traceable logs are implemented using the implicit contexts introduced in LogTape 0.7.0, and most of the logs that Fedify records are given a requestId or messageId. This means that logs can be grouped into requests or background tasks for better analysis.

Want to try it out in advance? Try Fedify v1.2.0-dev.468+2e17cd69 (JSR & npm)!

Emelia 👸🏻's avatar
Emelia 👸🏻

@thisismissem@hachyderm.io · Reply to colin mitchell's post

botsin.space PSA

@muffinista that's quite sad news, but I understand it.

Is your fork of Mastodon open-source? (it should be but y'know)

I'm thinking maybe the next-generation botsin.space could be running something more specialised for bots?

e.g., something written on @fedify instead of mastodon

Fedify: an ActivityPub server framework's avatar
Fedify: an ActivityPub server framework

@fedify@hollo.social

The next release of Fedify will introduce the fedify node command, which fetches the NodeInfo of the asked instance and visualizes it in neofetch-style.

The result of fedify lookup misskey.io. The NodeInfo document is visualized along with the favicon.
ALT text detailsThe result of fedify lookup misskey.io. The NodeInfo document is visualized along with the favicon.
The result of fedify node https://hollo.social/@fedify command. The NodeInfo document is visualized along with the favicon.
ALT text detailsThe result of fedify node https://hollo.social/@fedify command. The NodeInfo document is visualized along with the favicon.
The result of fedify lookup venera.social. The NodeInfo document is visualized along with the favicon.
ALT text detailsThe result of fedify lookup venera.social. The NodeInfo document is visualized along with the favicon.
The result of fedify lookup fosstodon.org. The NodeInfo document is visualized along with the favicon.
ALT text detailsThe result of fedify lookup fosstodon.org. The NodeInfo document is visualized along with the favicon.
Fedify: an ActivityPub server framework's avatar
Fedify: an ActivityPub server framework

@fedify@hollo.social

The next release of Fedify will introduce the fedify node command, which fetches the NodeInfo of the asked instance and visualizes it in neofetch-style.

The result of fedify lookup misskey.io. The NodeInfo document is visualized along with the favicon.
ALT text detailsThe result of fedify lookup misskey.io. The NodeInfo document is visualized along with the favicon.
The result of fedify node https://hollo.social/@fedify command. The NodeInfo document is visualized along with the favicon.
ALT text detailsThe result of fedify node https://hollo.social/@fedify command. The NodeInfo document is visualized along with the favicon.
The result of fedify lookup venera.social. The NodeInfo document is visualized along with the favicon.
ALT text detailsThe result of fedify lookup venera.social. The NodeInfo document is visualized along with the favicon.
The result of fedify lookup fosstodon.org. The NodeInfo document is visualized along with the favicon.
ALT text detailsThe result of fedify lookup fosstodon.org. The NodeInfo document is visualized along with the favicon.
Emelia 👸🏻's avatar
Emelia 👸🏻

@thisismissem@hachyderm.io

If you're running GoToSocial prior to v0.17.0, please, for the love of all good developers sanity, please upgrade.

GoToSocial prior to v0.17.0 had a broken JSON-LD context, which prevents federation from working correctly with some servers (e.g., anything built on Fedify)

Screenshot of GoToSocial versions according to FediDB, something like 25% of servers are pre version 0.17.0
ALT text detailsScreenshot of GoToSocial versions according to FediDB, something like 25% of servers are pre version 0.17.0
Fedify: an ActivityPub server framework's avatar
Fedify: an ActivityPub server framework

@fedify@hollo.social

The translation of @monaco_koukoku's review on the Japanese version of Creating your own federated microblog:

I read about 70% of the Fedify book on the plane. It was carefully explained step by step, and I could easily understand the contents. Maybe it's because I have researched on implementing ActivityPub before, but I got the impression that I can create it easily. It is also good that there are plenty of ways to check how the implementation works. (I didn't know such a service existed…)

Fedify's only role is to speak ActivityPub, so you need to write your own UI and store data in a database (examples of each are included), but this also means that you can use any UI framework or relational database you like, which opens up a wide range of application possibilities. However, if Fedify does nothing too much, it will just be a hassle, so it is probably a good balance between the two. (Note: I'm saying this before I've even gotten around to doing it myself yet.)

https://fedibird.com/@monaco_koukoku/113378450321946172

モナコ広告 :fedibird1: @技術・雑談's avatar
モナコ広告 :fedibird1: @技術・雑談

@monaco_koukoku@fedibird.com

Fedify本、飛行機の中で7割くらい読んだ。
丁寧に順を追って解説されていて、すんなり内容が入ってきた。以前ActivityPubの実装を調べたことがあるからかもしれないが、すぐ作れそうな印象を受けた。実装の動作確認方法が豊富なのも良い。(こんなサービスあったんだ、ってなった)

Fedifyの役割はAPを喋ることだけなので、UIもDBへの保存処理も自分で書く必要があるが(それぞれ実装例は付いている)、逆に言えば好きなUIフレームワークやRDBを使えるということを意味しており、応用可能性が広がる。しかしFedifyが何もしなさすぎても面倒なだけなので、そこのバランスがよくできているということだろう。(※まだ自分で手を動かす前の段階で言っている)

Emelia 👸🏻's avatar
Emelia 👸🏻

@thisismissem@hachyderm.io · Reply to Emelia 👸🏻's post

This would propagate through @fedify to implementations (e.g., Hollo) where they would fail to lookup the @context for schema.org, which would prevent fetching Actor documents from GoToSocial 0.19.x

cc @gotosocial in case this is something you want to improve on your side

← Newer
Older →