@hongminhee洪 民憙 (Hong Minhee) なるほど、期待してます!
どんどん盛り上がると良いですね。

洪 民憙 (Hong Minhee)
@hongminhee@hackers.pub · 577 following · 381 followers
Hi, I'm who's behind Fedify, Hollo, BotKit, and this website, Hackers' Pub!
Fedify, Hollo, BotKit, 그리고 보고 계신 이 사이트 Hackers' Pub을 만들고 있습니다.
Website
- hongminhee.org
GitHub
- @dahlia
Hollo
- @hongminhee@hollo.social
DEV
- @hongminhee
velog
- @hongminhee
Qiita
- @hongminhee
Zenn
- @hongminhee
Matrix
- @hongminhee:matrix.org
X
- @hongminhee
@nove_bnove-b🦥 ありがとうございます。頑張ります!
Hackers' Pub登録したけど、クライアントに対応してない?
@nove_bnove-b🦥 Mastodon互換APIを実装していないため、まだモバイルアプリはありません。今後公式モバイルアプリを制作する予定です。
Hackers' Pub登録したけど、クライアントに対応してない?
@nove_b さん、いらっしゃいませ!
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 #Solid, #SolidStart, #Pothos, #GraphQL, and #Relay. In a world dominated by Next.js and React, this feels refreshingly different. And yes, we're sticking with #Deno 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.
오늘 @xiniha 님 소환해서 배운 것:
- SolidStart 기본적인 사용법
- SolidStart 위에서 GraphQL 질의해서 결과 갖다 쓰는 법
- GraphQL + Relay에서 커넥션에 추가 필드 끼워넣는 법
- SolidStart에서 shadcn/ui…가 아니라 solid-ui 쓰는 법
그리고 배운 건 아니고 그냥 @xiniha 님이 다 해주신 것:
- Lingui를 이용한 국제화 세팅
- Deno를 쓰기 때문에 생기는 온갖 트러블들 해결
이제 이 새로운 스택으로 Hackers' Pub을 재구현하기만 하면 된다…! 다행히 도메인 모델은 분리되어 있어서, UI 위주로 재작성하면 될 것 같다.
洪 民憙 (Hong Minhee) shared the below article:
스마트폰 카메라 사용이 불가능한 환경에서 TOTP QR코드 옮기기
변규홍 / combacsa @combacsa@hackers.pub
이 글은 2차 인증 시 QR 코드 스캔이 불가능한 환경에서 TOTP를 등록하는 방법을 소개합니다. 카메라를 사용할 수 없고, 파일 반출이 금지된 Windows 환경에서 Python과 QR 코드 리더 패키지(qreader)를 사용하여 QR 코드를 해독합니다. 해독된 비밀 키를 KeePassXC에 등록하여 TOTP를 생성하고, 이를 통해 2차 인증을 완료합니다. 이후 Google Authenticator 앱에도 동일한 비밀 키를 등록하여 편의성을 높입니다. 마지막으로, 더 간편한 방법(PyOTP 사용)이 있었을지에 대한 질문을 던지며 마무리합니다. 이 글은 제한된 환경에서 TOTP 등록 문제를 해결하는 실질적인 방법을 제시하고, 독자에게 추가적인 탐구의 여지를 남깁니다.
Read more →요즘 본격적인 바이브 코딩 말고 자잘한 수정은 그냥 Warp에서 에이전트 모드를 쓰고 있는데, 적당히 잘 굴러가서 괜찮다.
페미위키 개발팀에서 오픈 소스 컨트리뷰터 및 개발팀을 모집한다고 합니다!
안녕하세요, 페미위키 개발팀입니다. 개발팀 활성화를 위해 이리저리 둘러보다 해커스펍에 대해 알게 되었습니다. 여건이 되면 페미위키 개발에 대해서 얘기할 수 있는 기회를 만들어보려 합니다!
더불어 페미위키 개발팀에서 오픈소스 컨트리뷰터 & 개발팀을 모집합니다! 페미니스트시라면 정체성 불문, 거주국 불문하고 모시고 있습니다. 함께 페미니즘 정보집합체 만들어가요!
페미위키 개발팀(@femiwiki페미위키 개발팀)을 환영합니다!
이제 Fedify도 Cloudflare Workers에서 돌아가게 됐으니 BotKit을 Cloudflare Workers에서 돌아가게 해야…하는데, 일단 Deno 전용인 것부터 해결해야겠구나.
@AiOO 오… 속도 차이가 엄청나군요. (속도 차이가 포인트 맞죠?)
@hongminhee洪 民憙 (Hong Minhee) 네 맞아요! 정확히 알지는 못하지만 일단 노이즈(오류)가 있는 결과를 만들고 몇 번의 반복된 스텝으로 노이즈를 줄여나가는 방식이어서, 이전 결과 마지막에 토큰을 계속 이어 붙이는 방식보다 빠른 것 같습니다.
Gemini Diffusion 모델 테스트 중. 실존하는 기술이었다니..
@hongminhee洪 民憙 (Hong Minhee) 아마 스트리밍이 되면 [이 영상](https://framerusercontent.com/assets/YURlGaqdh4MqvUPfSmGIcaoIFc.mp4)처럼 보일 거예요. Stable Diffusion처럼 이미지를 생성하는 모델이면 중간 결과를 보여줘도 괜찮을 텐데 텍스트라 좀 애매할 것 같기두 합니다. 저는 보기에 이쁘긴 하지만요.
참고로 영상의 출처는 확산 모델로 사업하고 있는 인셉션 랩이라는 곳의 홈페이지입니다.
https://www.inceptionlabs.ai/introducing-mercury
@AiOO 오… 재밌네요. 새로운 문물을 알게 되었습니다.
[페미위키 6월 운영팀 모집]
운영팀은 페미위키를 어떻게 키워낼까 고민하는 개인들의 모임이며 여성혐오자가 아니라면 추가 조건 없이 함께할 수 있습니다.
운영팀 연락에 사용할 구글 지메일로 admin@femiwiki.com으로 지원 동기를 적어 보내주세요. (제목 "페미위키 운영팀 지원")
@hongminhee洪 民憙 (Hong Minhee) 네 맞아요! 정확히 알지는 못하지만 일단 노이즈(오류)가 있는 결과를 만들고 몇 번의 반복된 스텝으로 노이즈를 줄여나가는 방식이어서, 이전 결과 마지막에 토큰을 계속 이어 붙이는 방식보다 빠른 것 같습니다.
@AiOO 아… 그래서 스트리밍이 안 되나 보군요?
Gemini Diffusion 모델 테스트 중. 실존하는 기술이었다니..
@AiOO 오… 속도 차이가 엄청나군요. (속도 차이가 포인트 맞죠?)
평소에 함수형 언어 매니아들이 주장하는만큼 이펙트를 엄격하게 구분하는게 중요하다곤 생각안했는데, local first 앱을 만들다가 네트워크 요청을 포함한 IO와 그렇지 않은 IO를 구분해야하는 이유를 찾았다. 앱의 초기화 로직에 네트워크 요청이 숨어있으면 API 서버 장애시 앱이 아예 안켜지는 문제가 있다. 방금 이거랑 관련된 버그 찾느라 시간을 많이 썼다.
👀 noted: quick look at what Deno are cooking https://dbushell.com/notes/2025-06-07T07:01Z/
적절한 타이밍
Fedify 1.6

洪 民憙 (Hong Minhee) @hongminhee@hackers.pub
Fedify 1.6.1がリリースされ、Cloudflare Workersへの対応やセキュリティ互換性の向上が図られました。サーバーレス環境でのActivityPubアプリケーション実行を可能にするため、Cloudflare KV APIを利用した`WorkersKvStore`や、Cloudflare Queuesを活用した`WorkersMessageQueue`が導入されています。また、`FederationBuilder`クラスと`createFederationBuilder()`関数により、フェデレーションの遅延インスタンス化がサポートされ、コード構成の改善やCloudflare Workersとの互換性が向上しました。さらに、最新のHTTP Message Signatures標準(RFC 9421)を実装し、レガシー実装との互換性を保つためのダブルノック機構も導入されています。WebFinger機能の強化やContext APIの改善も行われ、開発者はより柔軟なリクエスト処理やデータフロー管理が可能になります。このリリースは、フェディバースにおける幅広い互換性を維持しつつ、デプロイメントの選択肢を広げ、新たなActivityPubセキュリティ標準に対応するための重要な一歩です。
Read more →@hongminhee洪 民憙 (Hong Minhee) 초대장이 많아진 김에, 이 초대 링크 기능을 써봐야겠네요!
@arkjunJuntai Park 오, 좋습니다! 많이 뿌려주세요! ㅎㅎㅎ
@jj1bdxKenji Rikitake Welcome to Hackers' Pub, Kenji!
Cloudflare Workers 배포와 RFC 9421 (HTTP Message Signatures) 서명 및 검증을 지원하는 Fedify 1.6이 릴리스되었습니다!
We're excited to announce the release of #Fedify 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 #fediverse.
🌐 Cloudflare Workers support
Fedify 1.6 introduces first-class support for Cloudflare Workers, enabling #serverless deployment of #ActivityPub applications at the edge.
New components
WorkersKvStore
: A key–value store implementation using Cloudflare's KV API for persistent storage in Workers environmentsWorkersMessageQueue
: A message queue implementation leveraging Cloudflare Queues for reliable message processing
Key features
- Seamless integration with #Cloudflare'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 #Workers 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:
- Primary attempt: RFC 9421 (HTTP Message Signatures) for modern implementations
- Fallback: Draft cavage version for legacy compatibility
- 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.
#fedidev #RFC9421 #HTTPSignatures #HTTPMessageSignatures #CloudflareWorkers
TIL the distinction between
$ cat << EOF
and
$ cat << 'EOF'
and… dang. Shell syntax sure is… something
if you ever have to write shell scripts, please, please run https://www.shellcheck.net over them before running them
Gemini-2.5-pro-preview-06-05
------------------------------
- 정식 출시전에 최신 *Gemini 2.5 Pro* 의 미리보기 버전이 이용 가능해짐
- LMArena, WebDevArena 등 주요 평가에서 기존 모델 대비 *24~35점 Elo 상승*
- *코딩, 과학, 수학, 멀티모달 이해, 장문 컨텍스트 처리 등 주요 벤치마크에서 최상위 성능* 을 기록
- 입력 가격 $1.25, 출력 가격 $10(백만 토큰…
------------------------------
https://news.hada.io/topic?id=21317&utm_source=googlechat&utm_medium=bot&utm_campaign=1834
Did you know? #Fedify provides #documentation optimized for LLMs through the llms.txt standard.
Available endpoints:
- https://fedify.dev/llms.txt — Core documentation overview
- https://fedify.dev/llms-full.txt — Complete documentation dump
Useful for training #AI assistants on #ActivityPub/#fediverse development, building documentation chatbots, or #LLM-powered dev tools.
뭐든 잘 만드려면 공부를 해야 하는데, 공부를 안 하고 만들기만 많이 만드는 느낌이다…
와, 대박.... 해커스펍 초대링크 구현 엄청 아름답게 되었음...
@nolakyu 님, 어서 오세요!
@20chan 님, 어서 오세요!
@drkup 님도 어서 오세요!
@viram비람 님, 어서 오세요!
日本のソフトウェア開発者の皆様をHackers' Pubにご招待します。Hackers' Pubは、ActivityPubを実装するソフトウェア開発者のためのSNSであり、ブログプラットフォームです。MastodonとQiitaやZennをミックスしたような雰囲気です。短文(投稿)と長文(記事)の両方に対応しており、ActivityPub上では投稿はNote
、記事はArticle
として表現されます。また、快適な技術ブログ執筆のために、TeX数式やGraphvizダイアグラムなど、さまざまなMarkdown拡張にも対応しています。ご興味のある方は、下記の招待リンクから先着25名までご登録いただけます。
https://hackers.pub/@hongminhee/invite/0197453c-95a9-7542-8c23-dc213ba07fb0
Hackers' Pub에 공유할 수 있는 초대 링크 기능을 추가했습니다. 설정 → 초대 페이지에서 초대 링크 생성이 가능하며, 초대 링크는 정원이나 유효 기간, 메시지를 정할 수 있게 되어 있습니다. 아무래도 DM으로 직접 초대 요청을 달라고 하면 쑥스러움이 많은 분들은 요청을 안 하시는 경우가 많은 것 같아서 만들게 되었습니다. 참고로, 초대 링크를 통해 가입한 사용자는 초대 링크를 생성한 사람과 자동으로 맞팔하게 됩니다.
@hongminhee洪 民憙 (Hong Minhee) staged되지 않은 변경도 커밋 메시지에 포함되버려서 안쓰고있는데, 그걸 프롬프팅으로 해결할수가 있군요?
@bglbgl gwyng 네, 저도 처음에 그래서 잘 안 쓰다가 해법을 찾았습니다. ㅋㅋㅋ
요즘에는 커밋 메시지 작성하기 귀찮을 때 LLM을 많이 쓴다. Warp나 Claude Code에서 아래와 같은 프롬프르트를 주로 쓰는 편:
Please make a commit for the currently staged changes with an appropriate commit message. The first line of the commit message should be short and concise.
Hackers' Pub에 초대 링크 공유 기능을 구현했습니다. 아직 머지는 안 했고요. 심심하신 분들은 한 번씩 살펴보시고 딴지 걸어주시면 감사하겠습니다.
다들 그렇듯 나도 나이먹으면서 점점 관심없는 주제로 별로 안친한 사람들과 스몰토크하는 것에 익숙해졌는데, 여전히 사주팔자/점술 이런 얘기가 나오면 도저히 뭐라고 맞장구를 쳐야할지 모르겠다. 이야기하는 그룹에 그런거 좋아하는 사람이 여러명 있을땐 그들끼린 너무 즐겁게 그 주제로 꺄르르르호호호 하는데, 주제가 좋고 싫고를 떠나서 진짜 한마디도 할 마디도 거들수가 없더라. 그나마 비꼬지 않고 닥치고 있는게 철든 결과물인듯하다.
@bglbgl gwyng 저도 그래요… ㅋㅋㅋ 그냥 허허허 웃고만 있게 됩니다.
tauri를 좀 써보니 진짜 약간의 레이어만 있으면 바로 웹서비스로도 만들 수 있을 것 같은데... 그 약간이 문제겠지...
React만 쓰다가 solidjs를 시도 해봤는데, 홍보하고 있는 장점을 전혀 못 느끼고 있다. 물론 solidjs자체의 문제는 아닌 것 같고, 같이 쓰는 라이브러리의 문제인 것 같다. 일단 Router의 Context Provider와 Route 정의 트리의 시작이 분리가 안되어있고, 부분 경로 별로 레이아웃을 가지는 형태로 작성이 어려운 것 같다. 그리고 A 요소도 어째 동작을 안하게 되었는데 무엇이 문제인지 모르겠다. 디자인 작성이 싫어서 SUID - MUI (react material design)의 solidjs포트 - 를 썼는데 어째서인지 안쓰는 모듈까지 잔뜩 로드하느라 첫 렌더가 너무 느리다.
Even with close confirmation I sometimes close my terminal and think "OH FUCK NO." Coming soon to Ghostty, you can undo that. 🥰 (Technical details: we keep the terminal running for a configurable time in the background before terminating for real, similar to email undo send).
(macOS only for now, AppKit APIs provide a nice undo manager implementation that eases this quite a bit. I still have to do research on GTK for Linux.)
@hollo 코딩 불감증… ㅋㅋㅋㅋ 재밌는 표현이네요. 맞는 것 같습니다.
JavaScript의 Intl.*
API들 참 유용하고 좋다.