Using #Madblog as the easiest way to spin up an Indieweb/ActivityPub-compatible blog.
Zero db, zero JS, entirely hosted on text files.
Using #Madblog as the easiest way to spin up an Indieweb/ActivityPub-compatible blog.
Zero db, zero JS, entirely hosted on text files.
That looks really interesting! Congrats on shipping. I’m glad to see more people implementing “headless” AP servers.
The one piece of feedback I have: your outbox seems to have no pagination and it’s only showing updates for your actor profile. So there is no way for someone to use browse through your posts or use the outbox as a “RSS feed” of sorts. It’s also embedding the whole object, all the time. If you are just serving static files (which are easy to cache), perhaps it would be better to just provide a stable URL for the objects, and then just return the document id in the “object” field?
That’s right, there’s no pagination on the outbox right now - it’s just a few text files anyway so I didn’t bother to implement it yet. But it’s on my (very short term) radar. The RSS/Atom feeds are already provided over
/feed.rssand/feed.atomroutes respectively though. About embedding the whole object vs. a reference, that can be configured viaactivitypub_object_type. It defaults toNote, so the whole content is included, but it can also be set toArticle- in that case only a reference to the object is rendered, similar to what WriteFreely does in its latest implementation.