mastodon project to gotosocial

Table of Contents

I have tried several times to self-host the official opensource project mastodon. I’m much more minimalist-minded, such as supporting project like Gemini, as I’m from unix-shells world. I prefer focusing on contents rather than on cosmetics, like the bloated web pages of today.

Gemini is a minimalist protocol, meant to avoid how bloated weird HTTP went. Minimalism permits fast loading, no diverting cosmetics, so small attack surface, removes pressure on server resources. I prefer to focus on contents, like in a book, still layout setup with markdown, but no weird unsafe javascript. TLS is mandatory. By design there are no places for long extensions options. Minimalism rule prevails. So no goal to extend…extend…extend.. and…wait…we’re back to bloated HTTP..oh nooo!

Mastodon is an awesome platform but maintaining the official server is quit time eating. After several versions upgrades conflicts nightmare with ruby and other frameworks included, I gave up, as what was meant to be lightweight server management, easily falls into hours of issues solving, which is really not what I planned for. I really don’t blame the project at all. It is a wonderful project, but it is rather heavyweight with all the components for the timeslots I can reserve relating to mastodon server management.

Then I found gotosocial and it seems to really meet my needs and the design principles I adhere with. gotosocial is written in Go, one of my favourite programming languages, this is a welcome sign. The project seems to be very focus with privacy, user respect, simple straightforward options. Again, that kind of minimalism is a sign of good design for me.

No external dependencies apart from a database (or just use SQLite!).: wow…sounds like the developers share same ideas as me. Simple, lightweight, safe, are critical concepts for a fediverse instance. It has minimal resource footprint, so a good candidate to host on a raspberrypi4 for instance.

In terms of security, they seem to be quite clever for visibility of posts. Builtin support for let’s encrypt, 2FA integration, can use sqlite3.

So far So good, while still considered beta release, I plan to setup my own gotosocial instance soon. I’ll let you know.

73 Julien