Part of the fun I have with this is figuring out how to build a simple application in as little time as possible that's still useful from day 1 -- and after some thinking I figured it out.
So v0.1 will have a GUI only for the primary use case: reading things. It'll eventually be multi-user (schema is set up for it), but single-user upon release. And to do anything besides the primary use case, you'll use cURL or Postman or whatever to call the API.
Last night got the database schema worked out to handle everything that'll be in the MVP and versions after. Today have been adding the API layer and bringing over code I needed from Write.as.
We're now sending out Update activities, but it seems Mastodon doesn't do anything with them, so titles and URLs won't update. Still, it'll work on any future platforms that do something with the event.
Blogs are now discoverable on #Pleroma, but following doesn't seem to work -- no request is made to Write.as -- and the URL to the blog isn't correct. Will keep picking away at it.
Patched the go-webfinger library (https://github.com/writeas/go-webfinger) so it supports requests without the acct: scheme and that seems to make blogs discoverable on #Pleroma. Still needs more testing.
Going to make individual posts findable in the #fediverse via search
Now that #federation is live, time to get things working with other platforms. Next up: #Pleroma
Now just double-checking all endpoints and #ActivityStreams data -- have to verify sites on write.as/*/, *.writeas.com, and custom domains.
✅ Blogs on custom domains are discoverable
✅ You can choose your handle for your custom domain blog (default: @blog@example.com)
✅ Custom domain blogs have NodeInfo showing them each as a single-user "instance"
✅ AP endpoints should be future-proof for when you can eventually self-host your blog
✅ Posts federate from blogs on custom domains
Something I'm looking forward to: non-technical users seeing this new setting on their blog and asking me what it means. I have no doubt it'll be confusing to the uninitiated, so it'll be nice to hear everyone's questions, and figure out how to explain federation in a way that makes sense to them.
Based on that, I can tweak the UI so more people understand what's going on right away. Enough of that, and more people will be able to join the fediverse without the whole learning curve.
Actually it'll be something like this in the "Publicity" section for everyone, with a textbox that appears when "Custom domain" is selected.
Okay, custom domains are discoverable and have all endpoints in place. Now just need to let everyone choose their handle. This will go in a new "Federation" section on the blog settings page -- a page that's starting to get a little long I think, so I'll have to redesign it a bit in the near future.
One thing I want to do is make sure replies from the #fediverse are gracefully handled / rejected, since they don't go anywhere when replying to blog posts right now. Not sure how to do that, but I'll try a few things before the full roll-out.
Now I'm working on making blogs on custom domains discoverable in the fediverse , then adding a setting for all users to enable #federation.
Turns out boosting does work, just not on #writingexchange for certain accounts of mine I was testing with and broke on that instance (like @matt@write.as).
Casual dev-related updates from @write_as / @writefreely, tooted by @matt.
This account isn't super active. You might want to check out our other profiles!