Replies: 2 comments 3 replies
-
I agree generally. I read a few of your posts, and some thoughts aloud: I feel that the current implementation and architecture is very very heavily geared towards activitypub: inbox, outbox and processing of items are essentially the source of truth and are at the core of the current microblog.pub implementation. Everything else hangs off that back of or is triggered by that. I was aware of bridgy, but never really poked around to get to granary. I don't fully understand granary yet, but it looks like it basically uses AS1 (basically activitypuyb) as a common language to convert between all the other popular social protocol languages. I don't like reinventing the wheel, but I feel like what I want microblog.pub to be - in theory - is a really small selfhosted microblog site like it is now, but with granary attached to support to include relative things from other networks in the feed, and some outgoing equivalent to send/post/share/syndicate to other networks. An approach to get to that place would be to break it into 3 parts:
Not sure if the dsblank/activitypub came before or after microblog.pub. I can see dsblank has some of the first PRs on original master branch of tsileo/microblog.pub though. The main difference looks to be dsblank was more focused on being an activitypub only type thing. |
Beta Was this translation helpful? Give feedback.
-
Hi all! Exciting that you're considering granary! I'm happy to answer any questions and help any way I can. Your understanding of granary here, and how you could use it, makes sense. Granary does indeed use ActivityStreams 1 as its base format. Generally, to translate from format X to format Y, granary converts X to AS1, and then from AS1 to Y. This has tradeoffs, but it's worked well enough for us for a long time. One minor note though: ActivityStreams is not ActivityPub. ActivityStreams is a data model and format, ActivityPub is a protocol. Granary understands both AS1 and AS2, but it doesn't do ActivityPub itself at all. It does implement a few other closed social network APIs though, as well as a couple open protocols, notably webmentions and Nostr (beta quality). Otherwise, one thing I'm doing right now to improve usability is standardize the names of the core translation functions in all of the different modules. Right now there are a lot of different names, but soon they'll all be Lmk if I can help otherwise! |
Beta Was this translation helpful? Give feedback.
-
One of the things I am most interested in (and that brought me to uBlog.pub) is the implementation of open web protocols. (BTW, I am not alone. Check #14.)
For instance, I would love to contribute to the implementation of an ActivityPub Python library. It only makes sense to me to do so as an effort related to our ORG (which I am starting to think we should change the name to something broader if you agree with my points here.) In my view, it would make a lot of sense to either extract the ActivityPub code as a new repo and build it as a library or start from an existing library (see this - especially, look at their "app/blog" page 😬).
The same rationale would obviously apply to WebMentions and any other protocol we want to support. What do you think?
Beta Was this translation helpful? Give feedback.
All reactions