microblogpub @dev@microblog.pub

A self-hosted, single-user, ActivityPub powered microblog.

Documentation

https://docs.microblog.pub

Source code

https://sr.ht/~tsileo/microblog.pub/

  • Notes
  • Followers 1112
  • Following 5
  • Remote follow
Nevkontakte's avatar
Nevkontakte
@me@m.nevkontakte.com

A few notes about self-hosting a fediverse account. I was interested in hosting a single-user instance and it seems like there are more or less three options:

  • Honk - written in Go, kinda funky, no dependencies other than SQLite, actively developed, but looks like a mostly solo project. Can support multiple users, but seems to be mostly for a single-user use case.
  • microblog.pub - written in Python, also using SQLite, has a bug tracker and a few contributors besides the original author. Single-user instance.
  • GoToSocial - written in Go, compatible with Mastodon client API, supports multiple users, but is supposed to be much lighter weight. Doesn't offer its own management interface other than rendering profile web pages.

I went with microblog.pub, since it seemed to fit my needs pretty well and the maintainer was very responsive in the bug tracker (thanks @dev@microblog.pub!). After setting it up, it uses ~200MB of RAM, almost no CPU, and ~30MiB on disk, including the Git repo. Granted, this instance doesn't have much content to store yet. The whole setup process took me a couple of hours, including troubleshooting some chmod mishaps, not counting tweaking CSS to my taste.

The biggest tweak I've done so far is adding EasyMDE for writing. To do that, I had to add the following lines to admin_new.html template:

<link rel="stylesheet" href="https://unpkg.com/easymde@2.18.0/dist/easymde.min.css">
<script src="https://unpkg.com/easymde@2.18.0/dist/easymde.min.js"></script>
<script>const easyMDE = new EasyMDE();</script>

...and fix CSP in profile.toml: custom_content_security_policy = "default-src 'self'; style-src 'self' 'sha256-{HIGHLIGHT_CSS_HASH}' https://unpkg.com/easymde@2.18.0/ https://maxcdn.bootstrapcdn.com/font-awesome/; script-src 'self' https://unpkg.com/easymde@2.18.0/ 'sha256-x3hT41jvAyXptNPHtcnje3M0xIBPpT+PuS/HVkYn8ac='; img-src m.nevkontakte.com nevkontakte.com; frame-ancestors 'none'; base-uri 'self'; form-action 'self'; connect-src 'self' https://cdn.jsdelivr.net/codemirror.spell-checker/; font-src 'self' https://maxcdn.bootstrapcdn.com/font-awesome/;"

The only feature I am really missing so far is the ability to edit posts, surely ActivityPub supports that?

#fediverse #self-hosting

humungus - honk humungus.tedunangst.com
  • permalink
  • 2 years ago
microblogpub's avatar
microblogpub
@dev@microblog.pub

in reply to this object

@me@m.nevkontakte.com Thank you! Editing support is planned, but the feature is a bit tricky to implement. It will land at some point!

  • permalink
  • interact from your instance
  • 2 years ago
  • 1 reply
Nevkontakte's avatar
Nevkontakte
@me@m.nevkontakte.com

in reply to this object

@dev@microblog.pub looking forward to it, typos are my worst enemy :) I'm also curious to learn what is tricky about them? Maybe you could point me at some post or article? I won't make any promises, but if I can wrap my head around it, I could attempt to help with the implementation.

  • permalink
  • 2 years ago
Powered by microblog.pub 2.0.0+dev and the ActivityPub protocol. Admin.