What is GoToSocial
If, like me, you're just joining in on Mastodon and the fediverse coming from the great Twitter migration, you might be confused about the difference between Mastodon and the various specs and other related, but seemingly different apps.
One such app is GoToSocial. As I've been playing around GoToSocial recently and plan on writing up on some of my experiences, I thought it would be good to start off with an introductory post.
GoToSocial docs site
Note that I am a newbie here. I've only gotten into this stuff the last couple of weeks. Don't read this post as definitive. It's intended for someone who's new to this world, as I am myself.
Mastodon vs. the fediverse
In order to understand what GoToSocial is, and where it stands in the fediverse, it's first important to understand what the different layers are. This is roughly my understanding:
- Protocol such as ActivityPub and WebFinger allow servers to interact with each other.
- Collectively these protocols, and the servers that implement them, are known as the fediverse.
- Mastodon is one such server app. But there are many others, some which don't present in a Twitter-like format. Such as BookWyrm, which allows sharing of reading lists.
- Mastodon implements API endpoints that client apps can use to communicate with it. This is what apps like Metatext.
- These are HTTP APIs for Mastodon. They are not fediverse protocols.
- GoToSocial is a fediverse server app that also implements the Mastodon APIs. This makes it more-or-less a replacement server.
Why Use GoToSocial
There are a few reasons to be interested in GoToSocial and potentially want to use it as a substitute for Mastodon:
- Mastodon is a hefty Ruby on Rails app that is complicated to deploy.
- GoToSocial is written in Golang and compiles to a single binary, making it substantially easier to deploy.
- GoToSocial claims to be able to run on low powered devices like Raspberry Pi.
- If you are running a personal instance, all of the above should make doing so both easier and cheaper.
- The repository appears to be under active development.
Why Not Use GoToSocial
Despite all of the reasons above, there are lots of reasons not to use GoToSocial, or at least to wait.
- GoToSocial is in Alpha. As such, it should not be perceived as stable.
- Not all of the Mastodon APIs have been implemented. It's missing big features such as muting and bookmarking today. Looking at the roadmap these are planned to be implemented, but have not been yet.
- Being in alpha, bugs and potential security vulnerabilities have to be considered a risk.
- GoToSocial doesn't have a full frontend. Instead you have to use 3rd party apps, including on the web such as Pinafore.