digitalcourage.social is one of the many independent Mastodon servers you can use to participate in the fediverse.
Diese Instanz wird betrieben von Digitalcourage e.V. für die Allgemeinheit. Damit wir das nachhaltig tun können, erheben wir einen jährlichen Vorausbeitrag von 1€/Monat per SEPA-Lastschrifteinzug.

Server stats:

816
active users

Sebastian Lasse

Hello @hongminhee

since multiple hours I was sleepless cause I wondered about how to store anything ActivityPub in

I think, I will finish this crazy code somewhen in the next days :) Would you be interested in such a thing?

If:
Tried to solve the following fully ActivityPub conformant, meaning e.g.
- multiple actors can do an action on multiple objects and it needs to be fully versioned cause Undo or Undo/Undo …
- so anything is RFC 6902 <-> kv where anything is ulid and the "version" for the object is the ulid of an Update/Undo etc.
- JSON Patch acknowledges the limits (e.g. size of kv values), any property is stored versioned
- strongly avoiding duplicates;
the "text properties" like contentMap are stored as cid and similar beneath each other by a numeric nilsimsa hash (though /me bad at math)
- we can query all relationships and
- additionally "where", "when", "what" questions are answered by geohash, ulid ranges or a specific hierarchic hash of as:- and our subtypes

@sl007 Thanks for sharing this interesting approach! I'd be very interested in looking at your code once it's completed. The way you're handling ActivityPub data with Deno KV sounds promising, especially your methods for versioning and avoiding duplicates. Please let me know when it's available to check out!