@hongminhee@todon.eu
@hongminhee@todon.eu avatar

hongminhee

@hongminhee@todon.eu

An intersectionalist, feminist, and socialist guy living in Seoul (UTC+09:00). Building #Fedify. Write some free software in #Haskell, #Rust, #TypeScript, & #Python. They/them.

I don't accept follow requests from accounts that haven't posted anything. 아무 글도 없는 어카운트한테는 팔로 리퀘스트를 받지 않고 있습니다. 投稿のないアカウントからのフォローリクエストは受け付けません。

#國漢文混用 #한국어 (#朝鮮語) #English #日本語

This profile is from a federated server and may be incomplete. Browse more on the original instance.

hongminhee, to mastodon
@hongminhee@todon.eu avatar

The max_id, since_id, and min_id parameters in 's Timeline API assume that the post ID is a sortable number. (Is this correct?) , the implementation I'm building, uses UUIDs for post IDs internally, so I'm stuck on how to implement a Mastodon-compatible API.

https://docs.joinmastodon.org/methods/timelines/

hongminhee,
@hongminhee@todon.eu avatar

Is it time for me to start using UUIDv7?

hongminhee,
@hongminhee@todon.eu avatar

@thisismissem Okay, I guess I'll need to try UUIDv7 then!

hongminhee,
@hongminhee@todon.eu avatar

@julian According to @thisismissem, Mastodon uses Snowflake for ID generation.

hongminhee,
@hongminhee@todon.eu avatar

@thisismissem Oh, I hadn't noticed that Mastodon's Timeline API comes with a Link header. Thanks for pointing that out!

hongminhee, to fediverse
@hongminhee@todon.eu avatar

I actually started because I was working on a single-user implementation called and felt like I needed some groundwork, and now that I'm somewhat done yak shaving, I'm back to working on Hollo, although I still jump back and forth between Hollo development and Fedify when I think of features I need for Fedify.

hongminhee,
@hongminhee@todon.eu avatar

I'm actually resisting the temptation to rewrite all of my Hollo code. 😂

hongminhee,
@hongminhee@todon.eu avatar

For your information, hollo (홀로) means alone in Korean.

hongminhee, to fediverse
@hongminhee@todon.eu avatar

, an server framework, has released version 0.8.0! Here are the highlights of this version:

fedify lookup: a command to look up any ActivityStreams objects (including actors); see also https://todon.eu/@hongminhee/112341925069749583
fedify inbox: a command to spin up an ephemeral ActivityPub server so that you can debug and test the activities you send; see also https://todon.eu/@hongminhee/112354353470490915
• followers collection synchronization mechanism
• improved overall performance
• fixed several bugs

https://github.com/dahlia/fedify/releases/tag/0.8.0

hongminhee, to linux
@hongminhee@todon.eu avatar

I built for . The build succeeds on the first try, but it barely runs.

hongminhee,
@hongminhee@todon.eu avatar

@annyeong I can't wait for the official binaries of Zed for Linux!

hongminhee, to node
@hongminhee@todon.eu avatar

's tutorial, which previously assumed you were using , can now be followed using .js and ! (What is Fedify? It's an ActivityPub server framework.)

However, they are written for Fedify 0.8.0, which hasn't been released yet. You can test it with the pre-release version, 0.8.0-dev.164, though.

https://unstable.fedify.dev/tutorial

hongminhee, to typescript
@hongminhee@todon.eu avatar

Should I rewrite in a programming language other than ? 😅

https://todon.eu/@hongminhee/112359155272283786

hongminhee,
@hongminhee@todon.eu avatar

@thisismissem When you say ESM builds, do you mean do the Fedify package published to npm support ESM? If that's what you mean, then yes, it does.

I'm constantly improving the documentation, but it's not easy (especially writing in English as a non-native English speaker). 😅

hongminhee, to fediverse
@hongminhee@todon.eu avatar

I'm working on adding a CLI toolchain to #Fedify to help with debugging. The first feature I implemented is the ActivityPub object lookup.

Here's a demo.

#fedidev #ActivityPub

The demo video on my terminal

hongminhee,
@hongminhee@todon.eu avatar

@mariusor It depends on a public local tunnel service under the hood, haha. Here's my module for that:

https://github.com/dahlia/localtunnel

hongminhee,
@hongminhee@todon.eu avatar

@mariusor First of all, the library itself does not have this feature — only the CLI toolchain has it.

And these services fortunately do not require signing up! So it does not share any account of them.

hongminhee,
@hongminhee@todon.eu avatar

If you already have Deno installed on your system, you can try the fedify command now:

deno install -A --unstable-fs --unstable-kv --unstable-temporal -n fedify jsr:@fedify/cli@0.8.0-dev.152+7dc1eb38

hongminhee,
@hongminhee@todon.eu avatar

I've done some basic documentation on the fedify command:

https://unstable.fedify.dev/cli

hongminhee,
@hongminhee@todon.eu avatar

Fixed a bug that the option -a/--authorized-fetch did not work on Windows.

hongminhee,
@hongminhee@todon.eu avatar

The second feature of the that I'm working on is ephemeral inboxes.

hongminhee,
@hongminhee@todon.eu avatar

The fedify inbox command, which will be shipped in the next release, is a tool that creates an ephemeral server so that you can debug and test the activities you send.

Here's a demo of it.

https://unstable.fedify.dev/cli#fedify-inbox-ephemeral-inbox-server

The demo video of the

hongminhee, to fediverse
@hongminhee@todon.eu avatar

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:

• Type-safe objects for Activity Vocabulary (including some vendor-specific extensions)
client and server
• HTTP Signatures
• Middleware for handling webhooks
protocol

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

https://fedify.dev/

hongminhee, to fediverse
@hongminhee@todon.eu avatar

, an server framework, has released version 0.7.0! Here are the key changes in this version:

• Access control for actors, collections, and more via authorized fetch (i.e., secure mode)
• Generalized object dispatcher
• Logging with for easier debugging

https://github.com/dahlia/fedify/releases/tag/0.7.0

hongminhee, to random
@hongminhee@todon.eu avatar

It appears that I need to implement Mastodon's follower synchronization mechanism… 🤔

https://docs.joinmastodon.org/spec/activitypub/#follower-synchronization-mechanism

hongminhee,
@hongminhee@todon.eu avatar
  • All
  • Subscribed
  • Moderated
  • Favorites
  • JUstTest
  • thenastyranch
  • DreamBathrooms
  • khanakhh
  • magazineikmin
  • osvaldo12
  • Youngstown
  • Durango
  • slotface
  • everett
  • rosin
  • mdbf
  • kavyap
  • ngwrru68w68
  • megavids
  • cubers
  • InstantRegret
  • tacticalgear
  • GTA5RPClips
  • ethstaker
  • tester
  • cisconetworking
  • normalnudes
  • provamag3
  • modclub
  • anitta
  • Leos
  • lostlight
  • All magazines