Consider integration with GotoSocial

This seems like low hanging fruit which could be very useful for writefreely providers and their users to build stronger writefreely communities.

The main idea is to have an integration with gotosocial where the created writefreely account is used directly as the integrated gotosocial account.

  • every wf user can be directly on the fediverse and can reply /with/ the writefreely account using any client that works with gotosocial.
  • allow comments on blogs to be handled with the integrated gotosocial instance

Both writefreely and gotosocial are golang projects so this would make integration relatively easy. Their minimalistic philosophies seem to align as well.

This could be really interesting! Do you know where exactly that integration might start? Like with authentication, or using their libraries, or something else?

I haven’t dived in yet. I first wanted to get the idea out here
for some brainstorming.

Here are some notes I jotted down:

Personally I am looking for the simplest integration possible

  • assume writefreely (WF) does the account management for now.

  • create a gotosocial (GTS) account in the coupled GTS install
    through their (admin cli?
    GtS CLI Tool - GoToSocial Documentation) api on every
    account creation in WF. Likewise for other account actions? (pw
    change?)

  • register WF as fully authorized client(s) to gts

  • on each WF created post, create a post on the coupled GTS
    instance and store relevant data for it, so wf knows where to
    find it, for example to render replies on the WF instance post
    page, like blog comments. Either do this per user or per
    blog;the latter is now the case for ActivityPub (AP) posting I
    believe?

  • other events (modify, delete, etc.) on WF content could be
    similarly posted to the coupled instance.

  • do some nice thing with the GTS users which have blogs on the WF
    instance so they clearly form a “local” community on the
    instance.

The above can also be reversed, i.e. assume GTS as the account
manager, thus allow for presenting the above combo as:

a WF instance with GTS integration: “a blog with
comments/discussion over AP”

OR

a GTS instance with WF integration: “a microblog with strong long
form content”

(depending on community preference)

The above coupling is loose, both WF and GTS can function
independently which I like a lot. (GTS can have accounts that are
not WF accounts and vice versa).

More complex variants are thinkable, but I like the loose
integration. As far as I can see most of the needed components are
there. (but I’m not knowledgeable enough on both codebases and AP
to judge properly)

marcel

@matt any insights from you?