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

洪 民憙 (Hong Minhee) :nonbinary:

@hongminhee@hollo.social · 997 following · 1406 followers

An intersectionalist, feminist, and socialist living in Seoul (UTC+09:00). @tokolovesme's spouse. Who's behind @fedify, @hollo, and @botkit. Write some free software in , , , & . They/them.

서울에 사는 交叉女性主義者이자 社會主義者. 金剛兔(@tokolovesme)의 配偶者. @fedify, @hollo, @botkit 메인테이너. , , , 等으로 自由 소프트웨어 만듦.

()

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

@hongminhee@hollo.social

Hello, I'm an open source software engineer in my late 30s living in , , and an avid advocate of and the .

I'm the creator of @fedify, an server framework in , @hollo, an ActivityPub-enabled microblogging software for single users, and @botkit, a simple ActivityPub bot framework.

I'm also very interested in East Asian languages (so-called ) and . Feel free to talk to me in , (), or (), or even in Literary Chinese (, )!

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

@hongminhee@hollo.social · Reply to 洪 民憙 (Hong Minhee) :nonbinary:'s post

安寧(안녕)하세요, 저는 서울에 살고 있는 30() 後半(후반) 오픈 소스 소프트웨어 엔지니어이며, 自由(자유)·오픈 소스 소프트웨어와 聯合宇宙(연합우주)(fediverse)의 熱烈(열렬)支持者(지지자)입니다.

저는 TypeScript() ActivityPub 서버 프레임워크인 @fedify 프로젝트와 싱글 유저() ActivityPub 마이크로블로그인 @hollo 프로젝트와 ActivityPub 봇 프레임워크인 @botkit 프로젝트의 製作者(제작자)이기도 합니다.

저는 ()아시아 言語(언어)(이른바 )와 유니코드에도 關心(관심)이 많습니다. 聯合宇宙(연합우주)에서는 國漢文混用體(국한문 혼용체)를 쓰고 있어요! 제게 韓國語(한국어)英語(영어), 日本語(일본어)로 말을 걸어주세요. (아니면, 漢文(한문)으로도!)

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

@hongminhee@hollo.social · Reply to 洪 民憙 (Hong Minhee) :nonbinary:'s post

こんにちは、私はソウルに住んでいる30代後半のオープンソースソフトウェアエンジニアで、自由・オープンソースソフトウェアとフェディバースの熱烈な支持者です。名前は洪 民憙ホン・ミンヒです。

私はTypeScript用のActivityPubサーバーフレームワークである「@fedify」と、ActivityPubをサポートする1人用マイクロブログである 「@hollo」と、ActivityPubのボットを作成する為のシンプルなフレームワークである「@botkit」の作者でもあります。

私は東アジア言語(いわゆるCJK)とUnicodeにも興味が多いです。日本語、英語、韓国語で話しかけてください。(または、漢文でも!)

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

@hongminhee@hackers.pub

We're migrating Hackers' Pub to a pretty unconventional tech stack, and I'm honestly excited about it!

Thanks to my friend @xiniha, we're diving into , , , , and . In a world dominated by Next.js and React, this feels refreshingly different. And yes, we're sticking with instead of Node.js too.

Some might call it contrarian, but I like to think of it as exploring what's possible beyond the mainstream. Sometimes the road less traveled leads to interesting places.

Emelia 👸🏻's avatar
Emelia 👸🏻

@thisismissem@hachyderm.io

Accidentally added a few bugs to @hollo leading to three additional releases 🫣

But we fixed them all once we could figure out what was going on

어둠사자's avatar
어둠사자

@gnh1201@catswords.social

ActivityPub을 만지던 진짜 이유를 언급하자면, 내년 출시를 목표로 ActivityPub 기반의 OTX라는걸 만들려고 합니다.

자세한 설명은 어려우니 간단하게만 말씀 드리면, 각국의 정보기관에서도 사용하는 정보공유 개념입니다.

많은 응원 바랍니다.

디자인은 @druidesse 님이 도와주시고 계십니다.

cheesekun

@cheesekun@pointless.chat

안녕하세요!

제가 소유하고 있는 아래 두 도메인을 양도받으실 분을 구합니다.

- mastodon.kr
- mstdn.kr

관심이 있으신 분은 디엠 보내주세요.

- 가급적이면 마스토돈 / 페디버스 운영이나 개발에 관여되어 있으신 분이 양도 받았으면 합니다.

- 무상으로 양도 드릴 예정이지만, 도메인 업체에서 명의 이전 수수료같은게 따로 부과되는 경우 별도로 지불해 주셔야 할 수도 있습니다!

감사합니다!

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

@hongminhee@hackers.pub

페미위키 개발팀에서 오픈 소스 컨트리뷰터 및 개발팀을 모집한다고 합니다!



RE: https://hackers.pub/@femiwiki/01974b1f-4e46-798c-a36f-e89bb48cc30a

페미위키 개발팀's avatar
페미위키 개발팀

@femiwiki@hackers.pub

안녕하세요, 페미위키 개발팀입니다. 개발팀 활성화를 위해 이리저리 둘러보다 해커스펍에 대해 알게 되었습니다. 여건이 되면 페미위키 개발에 대해서 얘기할 수 있는 기회를 만들어보려 합니다!

더불어 페미위키 개발팀에서 오픈소스 컨트리뷰터 & 개발팀을 모집합니다! 페미니스트시라면 정체성 불문, 거주국 불문하고 모시고 있습니다. 함께 페미니즘 정보집합체 만들어가요!

페미위키 오픈소스 컨트리뷰터 & 개발팀 모집
ALT text details페미위키 오픈소스 컨트리뷰터 & 개발팀 모집
1. 우대 사항:

페미위키 편집 경험이 한 번 이상 있으신 분
AWS 경험이 필요하신 분
사실상 표준이 아닌 기술/서비스에 거부감이 덜 하신 분 (예: Vue.js, Less.js, GitLab, Nomad, PHP)
기억 나는 리눅스 명령어가 세 개 이상인 분
ARM 서버 운영 경험이 있으신 분
JS를 TS로 변환하면 개운하신 분
GitHub Actions 사용 경험이 있으신 분
PHP 문법을 기억하시는 분
git rebase를 쳐본 적 있으신 분
오픈소스를 사랑하시는 분
ALT text details1. 우대 사항: 페미위키 편집 경험이 한 번 이상 있으신 분 AWS 경험이 필요하신 분 사실상 표준이 아닌 기술/서비스에 거부감이 덜 하신 분 (예: Vue.js, Less.js, GitLab, Nomad, PHP) 기억 나는 리눅스 명령어가 세 개 이상인 분 ARM 서버 운영 경험이 있으신 분 JS를 TS로 변환하면 개운하신 분 GitHub Actions 사용 경험이 있으신 분 PHP 문법을 기억하시는 분 git rebase를 쳐본 적 있으신 분 오픈소스를 사랑하시는 분
2. 업무 내용

신규 프로젝트
* 레벨 제도
* 프로필 페이지
* 게이미피케이션 / 도전과제
* HA 구성

상시 업무
* 서비스 모니터링
* 버그 수정
* 기술 지원
* 소프트웨어 업그레이드
ALT text details2. 업무 내용 신규 프로젝트 * 레벨 제도 * 프로필 페이지 * 게이미피케이션 / 도전과제 * HA 구성 상시 업무 * 서비스 모니터링 * 버그 수정 * 기술 지원 * 소프트웨어 업그레이드
관심 있다면 망설임 없이 https://github.com/femiwiki 접속!
ALT text details관심 있다면 망설임 없이 https://github.com/femiwiki 접속!
페미위키 개발팀's avatar
페미위키 개발팀

@femiwiki@hackers.pub

안녕하세요, 페미위키 개발팀입니다. 개발팀 활성화를 위해 이리저리 둘러보다 해커스펍에 대해 알게 되었습니다. 여건이 되면 페미위키 개발에 대해서 얘기할 수 있는 기회를 만들어보려 합니다!

더불어 페미위키 개발팀에서 오픈소스 컨트리뷰터 & 개발팀을 모집합니다! 페미니스트시라면 정체성 불문, 거주국 불문하고 모시고 있습니다. 함께 페미니즘 정보집합체 만들어가요!

페미위키 오픈소스 컨트리뷰터 & 개발팀 모집
ALT text details페미위키 오픈소스 컨트리뷰터 & 개발팀 모집
1. 우대 사항:

페미위키 편집 경험이 한 번 이상 있으신 분
AWS 경험이 필요하신 분
사실상 표준이 아닌 기술/서비스에 거부감이 덜 하신 분 (예: Vue.js, Less.js, GitLab, Nomad, PHP)
기억 나는 리눅스 명령어가 세 개 이상인 분
ARM 서버 운영 경험이 있으신 분
JS를 TS로 변환하면 개운하신 분
GitHub Actions 사용 경험이 있으신 분
PHP 문법을 기억하시는 분
git rebase를 쳐본 적 있으신 분
오픈소스를 사랑하시는 분
ALT text details1. 우대 사항: 페미위키 편집 경험이 한 번 이상 있으신 분 AWS 경험이 필요하신 분 사실상 표준이 아닌 기술/서비스에 거부감이 덜 하신 분 (예: Vue.js, Less.js, GitLab, Nomad, PHP) 기억 나는 리눅스 명령어가 세 개 이상인 분 ARM 서버 운영 경험이 있으신 분 JS를 TS로 변환하면 개운하신 분 GitHub Actions 사용 경험이 있으신 분 PHP 문법을 기억하시는 분 git rebase를 쳐본 적 있으신 분 오픈소스를 사랑하시는 분
2. 업무 내용

신규 프로젝트
* 레벨 제도
* 프로필 페이지
* 게이미피케이션 / 도전과제
* HA 구성

상시 업무
* 서비스 모니터링
* 버그 수정
* 기술 지원
* 소프트웨어 업그레이드
ALT text details2. 업무 내용 신규 프로젝트 * 레벨 제도 * 프로필 페이지 * 게이미피케이션 / 도전과제 * HA 구성 상시 업무 * 서비스 모니터링 * 버그 수정 * 기술 지원 * 소프트웨어 업그레이드
관심 있다면 망설임 없이 https://github.com/femiwiki 접속!
ALT text details관심 있다면 망설임 없이 https://github.com/femiwiki 접속!
samvie's avatar
samvie

@samvie@chaos.social

Great demo of @encyclia by @julian

Day 3 of starts strong with a great tool for the academic sphere👏

Making available for via @fedify

Open science communication is very relevant for the future development of the 🚀

Julian presenting Encyclia at Fediforum. You see a screenshare and Julians camera.
ALT text detailsJulian presenting Encyclia at Fediforum. You see a screenshare and Julians camera.
Julians page of Encyclia which he Demos at FediForum
ALT text detailsJulians page of Encyclia which he Demos at FediForum
Julian Fietkau's avatar
Julian Fietkau

@julian@fietkau.social · Reply to @reiver ⊼ (Charles) :batman:'s post

@reiver @hongminhee I ran an unconference session at @fediforum yesterday about "Implementing ActivityPub in 2025" but we were a pretty small group of people and went off topic a bunch, so the session notes is mostly just me trying to advertise @fedify. 🙃

Box464 (Not Hipster Santa)'s avatar
Box464 (Not Hipster Santa)

@box464@mastodon.social

Day 3 of is starting up with some demos! Up first, Encyclia, a way to share ORCID data on the fediverse. Follow at @encyclia

encyclia.pub/

@reiver ⊼ (Charles) :batman:'s avatar
@reiver ⊼ (Charles) :batman:

@reiver@mastodon.social

Julian Fietkay ( @julian ) just said nice things about @fedify at FediForum 2025.

cc: @hongminhee

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

@hongminhee@hackers.pub

페미위키 개발팀(@femiwiki)을 환영합니다!

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

@fedify@hollo.social

We're excited to announce the release of 1.6.1, which marks the beginning of the 1.6 series following the retraction of version 1.6.0. This release introduces significant new capabilities that expand Fedify's deployment options and enhance security compatibility across the .

🌐 Cloudflare Workers support

Fedify 1.6 introduces first-class support for Cloudflare Workers, enabling deployment of applications at the edge.

New components

Key features

  • Seamless integration with 's serverless runtime
  • Automatic handling of queue message processing through Workers' queue() method
  • Support for Node.js compatibility flag required for Fedify's cryptographic operations
  • Manual queue processing via Federation.processQueuedTask() method

For a complete working example, see the Cloudflare Workers example in the Fedify repository.

🏗️ Federation builder pattern

Fedify 1.6 introduces the FederationBuilder class and createFederationBuilder() function to support deferred federation instantiation. This pattern provides several benefits:

  • Deferred instantiation: Set up dispatchers and listeners before creating the federation object
  • Better code organization: Avoid circular dependencies and improve project structure
  • Cloudflare compatibility: Accommodates binding-based architectures where resources are passed as arguments rather than globals
  • Modular setup: Build complex federations piece by piece before instantiation

The builder pattern is particularly useful for large applications and environments like Cloudflare Workers where configuration data is only available at runtime.

🔐 HTTP Message Signatures (RFC 9421)

Fedify 1.6 implements the official HTTP Message Signatures standard (RFC 9421) specification, the final revision of the HTTP Signatures specification.

Double-knocking mechanism

To ensure maximum compatibility across the fediverse, Fedify 1.6 introduces an intelligent double-knocking mechanism:

  1. Primary attempt: RFC 9421 (HTTP Message Signatures) for modern implementations
  2. Fallback: Draft cavage version for legacy compatibility
  3. Adaptive caching: The system remembers which version each server supports to optimize future requests

This approach ensures seamless communication with both modern and legacy ActivityPub implementations while positioning Fedify at the forefront of security standards.

Interoperability testing

The RFC 9421 implementation has been thoroughly tested for interoperability with existing ActivityPub implementations that support RFC 9421 signature verification:

  • Mitra 4.4.0: Successfully verified Fedify-generated RFC 9421 signatures
  • Mastodon 4.4.0 development version: Tested RFC 9421 signature verification against Fedify's implementation (refer to Mastodon PR #34814, though Mastodon 4.4.0 has not yet been released)

These tests confirm that other ActivityPub implementations can successfully verify RFC 9421 signatures generated by Fedify, ensuring proper federation as the ecosystem gradually adopts the official specification. While these implementations currently support verification of RFC 9421 signatures, they do not yet generate RFC 9421 signatures themselves—making Fedify one of the first ActivityPub implementations to support both generation and verification of the modern standard.

🔍 WebFinger enhancements

Dedicated WebFinger lookup

The new Context.lookupWebFinger() method provides direct access to WebFinger data, offering developers more granular control over account discovery and resource resolution beyond the higher-level Context.lookupObject() method.

🛠 Context API improvements

Context data replacement

The new Context.clone() method enables dynamic context data replacement, providing greater flexibility in request processing and data flow management. This is particularly useful for middleware implementations and complex request routing scenarios.

🚀 Migration considerations

Backward compatibility

Fedify 1.6 maintains full backward compatibility with existing applications. The new HTTP Message Signatures and double-knocking mechanisms work transparently without requiring any code changes.

Node.js version requirement

Important: Fedify 1.6 requires Node.js 22.0.0 or later for Node.js environments. This change does not affect applications using Deno or Bun runtimes. If you're currently using Node.js, please ensure your environment meets this requirement before upgrading.

New deployment options

For new deployments, consider leveraging Cloudflare Workers support for:

  • Global edge deployment with low latency
  • Serverless scaling and automatic resource management
  • Integration with Cloudflare's ecosystem of services

🎯 Looking forward

Fedify 1.6 represents a significant expansion of deployment possibilities while maintaining the framework's commitment to broad compatibility across the fediverse. The addition of Cloudflare Workers support opens new architectural patterns for federated applications, while the RFC 9421 implementation ensures Fedify stays current with emerging ActivityPub security standards.


For detailed migration guides, API documentation, and examples, please visit the Fedify documentation. Join our community on Matrix or Discord for support and discussions.

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

@hongminhee@hollo.social · Reply to wakest ⁂'s post

@liaizon @kiwiyou I guess those screenshots are not from a translation website, but from a dictionary.

페미위키's avatar
페미위키

@femiwiki@planet.moe

[페미위키 6월 운영팀 모집]
운영팀은 페미위키를 어떻게 키워낼까 고민하는 개인들의 모임이며 여성혐오자가 아니라면 추가 조건 없이 함께할 수 있습니다.
운영팀 연락에 사용할 구글 지메일로 admin@femiwiki.com으로 지원 동기를 적어 보내주세요. (제목 "페미위키 운영팀 지원")

만화 캐릭터 검색할 때 성희롱을 봐야 할까?
페미위키는 만화, 게임, 웹툰, 애니메이션 등 취미 정보를 다룰 때 혐오를 담지 않도록 주의합니다
ALT text details만화 캐릭터 검색할 때 성희롱을 봐야 할까? 페미위키는 만화, 게임, 웹툰, 애니메이션 등 취미 정보를 다룰 때 혐오를 담지 않도록 주의합니다
kiwiyou's avatar
kiwiyou

@kiwiyou@twt.rs

오브젝티프's avatar
오브젝티프

@objectif@mitir.social · Reply to 오브젝티프's post

이럴 수가 이준석 제명 청원 진짜로 30만 돌파?!

이렇게 된 이상 7월 4일까지 최대한 달려 봅시다! 주변에 알려 봅시다!

목표는 이준석의 대선 득표수 292만인 걸로!!

https://petitions.assembly.go.kr/proceed/onGoingAll/327534C853DF2656E064B49691C1987F

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

@hongminhee@hollo.social

「펀쿨섹()」… 😂

https://mainichi.jp/articles/20250522/k00/00m/030/270000c

붉은 맛 Ernest:verified_communism:'s avatar
붉은 맛 Ernest:verified_communism:

@3me57@masost.one

이준석 의원 제명 국회청원서명입니다. 많은 참여 부탁드립니다.

https://petitions.assembly.go.kr/proceed/onGoingAll/327534C853DF2656E064B49691C1987F

Hollo :hollo:'s avatar
Hollo :hollo:

@hollo@hollo.social

What client apps do you use with ?

OptionVoters
Elk8 (17%)
Phanpy15 (31%)
Moshidon11 (23%)
Subway Tooter4 (8%)
Mona2 (4%)
Nightfox DAWN7 (15%)
Tusker1 (2%)
Woolly0 (0%)
洪 民憙 (Hong Minhee) :nonbinary:'s avatar
洪 民憙 (Hong Minhee) :nonbinary:

@hongminhee@hollo.social

どうやらメインで使ってるクライアントアプリがPhanpyだから、Holloのテストする時もついPhanpyばかりでやってたけど、これからは他のクライアントアプリでもテストしなきゃな。特にリリース前はQAプロセスとして、必ずいろんなクライアントでテストしないと。

Hollo :hollo:'s avatar
Hollo :hollo:

@hollo@hollo.social

🚨 Known Issue: Elk (@elk) login may fail on Hollo instances upgraded from 0.5.x to 0.6.x with 401 Unauthorized errors. Fresh 0.6.x installs work fine. Other clients (Phanpy, Moshidon) are unaffected.

We're investigating: https://github.com/fedify-dev/hollo/issues/167

Workaround: Use alternative clients like Phanpy (@phanpy) for now.

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

@hongminhee@hollo.social

@hollo @kodingwarrior @jihyeok 하스켈 카페 하나 만들어 주세요…

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

@hongminhee@hollo.social · Reply to yamanoku's post

@yamanoku あれ、このバグはHollo 0.6.1で修正されているはずなのに…

Jaeyeol Lee (a.k.a. kodingwarrior) :vim:'s avatar
Jaeyeol Lee (a.k.a. kodingwarrior) :vim:

@kodingwarrior@silicon.moe · Reply to Jaeyeol Lee (a.k.a. kodingwarrior) :vim:'s post

응응.... 미리 자료 만들게....

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

@hongminhee@hollo.social

Fedify 1.6 has been released, supporting Cloudflare Workers deployment and RFC 9421 (HTTP Message Signatures) signing and verification!

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

@fedify@hollo.social

We're excited to announce the release of 1.6.1, which marks the beginning of the 1.6 series following the retraction of version 1.6.0. This release introduces significant new capabilities that expand Fedify's deployment options and enhance security compatibility across the .

🌐 Cloudflare Workers support

Fedify 1.6 introduces first-class support for Cloudflare Workers, enabling deployment of applications at the edge.

New components

Key features

  • Seamless integration with 's serverless runtime
  • Automatic handling of queue message processing through Workers' queue() method
  • Support for Node.js compatibility flag required for Fedify's cryptographic operations
  • Manual queue processing via Federation.processQueuedTask() method

For a complete working example, see the Cloudflare Workers example in the Fedify repository.

🏗️ Federation builder pattern

Fedify 1.6 introduces the FederationBuilder class and createFederationBuilder() function to support deferred federation instantiation. This pattern provides several benefits:

  • Deferred instantiation: Set up dispatchers and listeners before creating the federation object
  • Better code organization: Avoid circular dependencies and improve project structure
  • Cloudflare compatibility: Accommodates binding-based architectures where resources are passed as arguments rather than globals
  • Modular setup: Build complex federations piece by piece before instantiation

The builder pattern is particularly useful for large applications and environments like Cloudflare Workers where configuration data is only available at runtime.

🔐 HTTP Message Signatures (RFC 9421)

Fedify 1.6 implements the official HTTP Message Signatures standard (RFC 9421) specification, the final revision of the HTTP Signatures specification.

Double-knocking mechanism

To ensure maximum compatibility across the fediverse, Fedify 1.6 introduces an intelligent double-knocking mechanism:

  1. Primary attempt: RFC 9421 (HTTP Message Signatures) for modern implementations
  2. Fallback: Draft cavage version for legacy compatibility
  3. Adaptive caching: The system remembers which version each server supports to optimize future requests

This approach ensures seamless communication with both modern and legacy ActivityPub implementations while positioning Fedify at the forefront of security standards.

Interoperability testing

The RFC 9421 implementation has been thoroughly tested for interoperability with existing ActivityPub implementations that support RFC 9421 signature verification:

  • Mitra 4.4.0: Successfully verified Fedify-generated RFC 9421 signatures
  • Mastodon 4.4.0 development version: Tested RFC 9421 signature verification against Fedify's implementation (refer to Mastodon PR #34814, though Mastodon 4.4.0 has not yet been released)

These tests confirm that other ActivityPub implementations can successfully verify RFC 9421 signatures generated by Fedify, ensuring proper federation as the ecosystem gradually adopts the official specification. While these implementations currently support verification of RFC 9421 signatures, they do not yet generate RFC 9421 signatures themselves—making Fedify one of the first ActivityPub implementations to support both generation and verification of the modern standard.

🔍 WebFinger enhancements

Dedicated WebFinger lookup

The new Context.lookupWebFinger() method provides direct access to WebFinger data, offering developers more granular control over account discovery and resource resolution beyond the higher-level Context.lookupObject() method.

🛠 Context API improvements

Context data replacement

The new Context.clone() method enables dynamic context data replacement, providing greater flexibility in request processing and data flow management. This is particularly useful for middleware implementations and complex request routing scenarios.

🚀 Migration considerations

Backward compatibility

Fedify 1.6 maintains full backward compatibility with existing applications. The new HTTP Message Signatures and double-knocking mechanisms work transparently without requiring any code changes.

Node.js version requirement

Important: Fedify 1.6 requires Node.js 22.0.0 or later for Node.js environments. This change does not affect applications using Deno or Bun runtimes. If you're currently using Node.js, please ensure your environment meets this requirement before upgrading.

New deployment options

For new deployments, consider leveraging Cloudflare Workers support for:

  • Global edge deployment with low latency
  • Serverless scaling and automatic resource management
  • Integration with Cloudflare's ecosystem of services

🎯 Looking forward

Fedify 1.6 represents a significant expansion of deployment possibilities while maintaining the framework's commitment to broad compatibility across the fediverse. The addition of Cloudflare Workers support opens new architectural patterns for federated applications, while the RFC 9421 implementation ensures Fedify stays current with emerging ActivityPub security standards.


For detailed migration guides, API documentation, and examples, please visit the Fedify documentation. Join our community on Matrix or Discord for support and discussions.

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

@hongminhee@hollo.social

어제 잠들기 ()에 ActivityPub으로 만들 만한 좋은 서비스 아이디어가 떠올랐었는데, 졸려서 메모 안 하고 잤더니 ()혀 안 떠오른다…

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

@hongminhee@hackers.pub

Cloudflare Workers 배포와 RFC 9421 (HTTP Message Signatures) 서명 및 검증을 지원하는 Fedify 1.6이 릴리스되었습니다!



RE: https://hollo.social/@fedify/019748ce-35c6-710d-85c3-c5e1fe067e73

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

@fedify@hollo.social

We're excited to announce the release of 1.6.1, which marks the beginning of the 1.6 series following the retraction of version 1.6.0. This release introduces significant new capabilities that expand Fedify's deployment options and enhance security compatibility across the .

🌐 Cloudflare Workers support

Fedify 1.6 introduces first-class support for Cloudflare Workers, enabling deployment of applications at the edge.

New components

Key features

  • Seamless integration with 's serverless runtime
  • Automatic handling of queue message processing through Workers' queue() method
  • Support for Node.js compatibility flag required for Fedify's cryptographic operations
  • Manual queue processing via Federation.processQueuedTask() method

For a complete working example, see the Cloudflare Workers example in the Fedify repository.

🏗️ Federation builder pattern

Fedify 1.6 introduces the FederationBuilder class and createFederationBuilder() function to support deferred federation instantiation. This pattern provides several benefits:

  • Deferred instantiation: Set up dispatchers and listeners before creating the federation object
  • Better code organization: Avoid circular dependencies and improve project structure
  • Cloudflare compatibility: Accommodates binding-based architectures where resources are passed as arguments rather than globals
  • Modular setup: Build complex federations piece by piece before instantiation

The builder pattern is particularly useful for large applications and environments like Cloudflare Workers where configuration data is only available at runtime.

🔐 HTTP Message Signatures (RFC 9421)

Fedify 1.6 implements the official HTTP Message Signatures standard (RFC 9421) specification, the final revision of the HTTP Signatures specification.

Double-knocking mechanism

To ensure maximum compatibility across the fediverse, Fedify 1.6 introduces an intelligent double-knocking mechanism:

  1. Primary attempt: RFC 9421 (HTTP Message Signatures) for modern implementations
  2. Fallback: Draft cavage version for legacy compatibility
  3. Adaptive caching: The system remembers which version each server supports to optimize future requests

This approach ensures seamless communication with both modern and legacy ActivityPub implementations while positioning Fedify at the forefront of security standards.

Interoperability testing

The RFC 9421 implementation has been thoroughly tested for interoperability with existing ActivityPub implementations that support RFC 9421 signature verification:

  • Mitra 4.4.0: Successfully verified Fedify-generated RFC 9421 signatures
  • Mastodon 4.4.0 development version: Tested RFC 9421 signature verification against Fedify's implementation (refer to Mastodon PR #34814, though Mastodon 4.4.0 has not yet been released)

These tests confirm that other ActivityPub implementations can successfully verify RFC 9421 signatures generated by Fedify, ensuring proper federation as the ecosystem gradually adopts the official specification. While these implementations currently support verification of RFC 9421 signatures, they do not yet generate RFC 9421 signatures themselves—making Fedify one of the first ActivityPub implementations to support both generation and verification of the modern standard.

🔍 WebFinger enhancements

Dedicated WebFinger lookup

The new Context.lookupWebFinger() method provides direct access to WebFinger data, offering developers more granular control over account discovery and resource resolution beyond the higher-level Context.lookupObject() method.

🛠 Context API improvements

Context data replacement

The new Context.clone() method enables dynamic context data replacement, providing greater flexibility in request processing and data flow management. This is particularly useful for middleware implementations and complex request routing scenarios.

🚀 Migration considerations

Backward compatibility

Fedify 1.6 maintains full backward compatibility with existing applications. The new HTTP Message Signatures and double-knocking mechanisms work transparently without requiring any code changes.

Node.js version requirement

Important: Fedify 1.6 requires Node.js 22.0.0 or later for Node.js environments. This change does not affect applications using Deno or Bun runtimes. If you're currently using Node.js, please ensure your environment meets this requirement before upgrading.

New deployment options

For new deployments, consider leveraging Cloudflare Workers support for:

  • Global edge deployment with low latency
  • Serverless scaling and automatic resource management
  • Integration with Cloudflare's ecosystem of services

🎯 Looking forward

Fedify 1.6 represents a significant expansion of deployment possibilities while maintaining the framework's commitment to broad compatibility across the fediverse. The addition of Cloudflare Workers support opens new architectural patterns for federated applications, while the RFC 9421 implementation ensures Fedify stays current with emerging ActivityPub security standards.


For detailed migration guides, API documentation, and examples, please visit the Fedify documentation. Join our community on Matrix or Discord for support and discussions.

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

@hongminhee@hollo.social · Reply to ここあにゃん :surprised_karin_chibi:'s post

@AmaseCocoa まさにその通りです!

ここあにゃん :surprised_karin_chibi:'s avatar
ここあにゃん :surprised_karin_chibi:

@AmaseCocoa@s.amase.cc

1.6でサポートされるってことはfedify inboxでRFCテストできるようになるのか​:ablobcatpnd_oooo:

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

@hongminhee@hollo.social

오늘 點心(점심)은 풀 잉글리시 브렉퍼스트! @jihyeok 님, @kodingwarrior 님과 함께 Ruby's Cafe에서.

회색 접시에 담긴 풀 잉글리시 브렉퍼스트(full English breakfast). 접시 중앙에는 노른자가 선명한 계란 프라이 2개가 놓여 있고, 그 주변으로 바삭하게 구운 베이컨 2장, 오렌지색 해시브라운 1개, 허브로 양념된 구운 버섯들, 신선한 시금치 잎, 그리고 오렌지색 구운 콩(베이크드 빈즈)이 배치되어 있다. 접시 오른쪽에는 작은 그릇에 담긴 버터가 함께 제공되었다. 식기류로는 포크와 나이프가 접시 오른쪽에 놓여 있으며, 모든 음식이 나무 테이블 위에 정갈하게 세팅되어 있다.
ALT text details회색 접시에 담긴 풀 잉글리시 브렉퍼스트(full English breakfast). 접시 중앙에는 노른자가 선명한 계란 프라이 2개가 놓여 있고, 그 주변으로 바삭하게 구운 베이컨 2장, 오렌지색 해시브라운 1개, 허브로 양념된 구운 버섯들, 신선한 시금치 잎, 그리고 오렌지색 구운 콩(베이크드 빈즈)이 배치되어 있다. 접시 오른쪽에는 작은 그릇에 담긴 버터가 함께 제공되었다. 식기류로는 포크와 나이프가 접시 오른쪽에 놓여 있으며, 모든 음식이 나무 테이블 위에 정갈하게 세팅되어 있다.
← Newer
Older →