Comparison of various Fediverse software
TODO:
- Supported media types
- Finish Akkoma research
General information
| Feature | Sharkey | WAFRN | Mastodon | Akkoma a |
|---|---|---|---|---|
| Closest to | Twitter / X, Bluesky |
Tumblr | Twitter / X, Bluesky |
Twitter / X, Bluesky |
| Monthly active users (MAU) of all instances | 3K+ | <1K | 990K+ | <6K |
| Fediverse account for software announcements | @sharkey @sharkey.team |
@admin @app.wafrn.net b |
@MastodonEngineering @mastodon.social |
✕ |
| Most popular instance | blahaj.zone 300+ MAU |
app.wafrn.net (flagship) 650+ MAU |
mastodon.social (flagship) 280K+ MAU |
fe.disroot.org 420+ MAU |
a. All comparisons in Functionality, Supported file types and Accessibility and Well-being assume that the default Akkoma-FE frontend is used.
b. Account is shared for software and flagship instance announcements.
Functionality
| Feature | Sharkey | WAFRN | Mastodon | Akkoma |
|---|---|---|---|---|
| Reactions | ✔ | ✔✔ a | ✕ | ✔✔ a |
| Flavoring posts | MFM | HTML + CSS Markdown |
✕ | HTML, Markdown, BBCode, MFM (limited) |
| Editing posts | ~ b | ~ b | ~ b | ~ b |
| Polls | ✔ | ~ c | ✔ | ✔ |
| Replies controls | ✕ | ✔ | ✕ | ✔ |
| Quoting controls | ✕ | ✔ | ✔ | ✔ |
| Post translation | ✔ | ✕ | ✔ | ✕ |
| Post attribution | ✔ | ✕ | ✔ | ? |
| Automated posts deletion | ~ d | ✕ | ✔ | ? |
| User verification | ✕ | ✕ | ✔ e | ✔ e |
| Following hashtags | ✕ | ✔ | ✔ | ✔ |
| Custom feeds | ✔ | ✕ | ✔ | ? |
| List of your likes/reactions | ✔ | ✕ | ✔ | ? |
| RSS feeds of local users | ✔ | ✕ | ✕ | ✕ |
| Bookmarks | ✔ | ✔ | ✔ | ✔ |
| Searching posts | ✔ | ~ f | ✔ | ✔ |
| Looking up posts by their links | ✔ | ✔ | ✔ | ✕ |
| Muting user's reposts | ✔ | ✔ | ✕ | ✕ |
| Muting user's quotes | ✕ | ✔ | ✕ | ✕ |
| Muting users | ~ g | ~ h | ✔ | ✔ |
| Blocking users | ✔ | ✔ | ✔ | ✔ |
| Muting/Blocking servers | ✔ | ✔ | ✔ | ✔ |
| Prebuilt themes | ✔ | ✔ | ✔ | ✔ |
| UI customization | ✔ | ✕ | ✕ | ✔ |
| Multi-column view | ✕ | ✕ | ✔ | ✔ |
| Custom CSS | ✔ | ✔✔ i | ✕ | ✕ |
| Bluesky bridging | ~ j | ✔ | ~ j | ~ j |
| Full deletion of the account | ✔ | ✔ | ✔ | ? |
a. Technically all reactions, which use custom emojis, federate to other instances as separate entities. For example neocat from wetdry.world and neocat from app.wafrn.net are technically different emojis. So most software display the supposedly same reactions separately one from the other, like this:
1
1
WAFRN and Akkoma not only combine reactions under a post with one name into one counter but also allow to react with that reaction if it's present on the instance instead of making the user to open the emoji menu to react with it. Additionally, Akkoma allows you to react with reactions that aren't on your instance if someone else reacted with that reaction.
b. Federation of post edits to other instances is very dubious between all Fediverse software. Most common issue is that edits to media alt texts will not federate to instances that already have received the post.
c. You can't add a poll to your post, but you can participate in other's polls.
d. Posts can be only made either followers-only or private (be able to be seen only by post's author), which is something that may not federate properly to other instances, so supposedly private post may still be seen by others.
e. By putting a link to your Mastodon or Akkoma profile on your website with the attribute rel="me" and adding the link to your website on your Mastodon or Akkoma profile in the profile attributes / extra fields, you can make a checkmark appear nearby the link to your website. This will only be seen by other Mastodon and Akkoma users.
f. WAFRN can only find posts if the text of the search query is one of the (hash)tags of the post. Since the culture of using tags on Fediverse is very different between users of different Fediverse software, that might render post search functionality entirely useless for the user.
g. Muting might not apply in some instances, like quoting. You can also see interactions from muted users with your post though you won't get notifications about them.
h. In the web client, muting users does not mute notifications of muted users interacting with your post in the moment you receive them. If you are checking the notifications after you received it, you will not see it in the list. In the official mobile app, notifications of muted users interacting with your post will be instead shown as a generic placeholder stating that it's a notification from muted user instead of not showing it at all.
i. On WAFRN user's custom theme can be seen by other WAFRN users, just like in Tumblr.
j. Bluesky bridging with the Fediverse can be achieved by using Bridgy, which is a third-party service and not the part of the software itself.
Supported file types
Images
| File extension | Sharkey | WAFRN | Mastodon | Akkoma |
|---|---|---|---|---|
.avif |
? | ? | ✔ | ✔ |
.gif |
✔ | ✔ | ✔ | ✔ |
.heic |
? | ? | ✔ | ✕ |
.heif |
? | ? | ✔ | ✕ |
.jp(e)g |
✔ | ✔ | ✔ | ✔ |
.png |
✔ | ✔ | ✔ | ✔ |
.webp |
✔ | ✔ | ✔ | ✔ |
Videos
| File extension | Sharkey | WAFRN | Mastodon | Akkoma |
|---|---|---|---|---|
.3gp |
? | ? | ✔ | ? |
.mp4 |
✔ | ✔ | ✔ | ✔ |
.ogv |
? | ? | ✔ | ? |
.webm |
? | ? | ✔ | ✔ |
.wma |
? | ? | ✔ | ? |
Audio
| File extension | Sharkey | WAFRN | Mastodon | Akkoma |
|---|---|---|---|---|
.aac |
? | ? | ✔ | ✔ |
.flac |
? | ? | ✔ | ✔ |
.mp3 |
✔ | ✔ | ✔ | ✔ |
.oga |
? | ? | ✔ | ✔ |
.wav |
? | ? | ✔ | ✔ |
Other
| File extension | Sharkey | WAFRN | Mastodon | Akkoma |
|---|---|---|---|---|
.it |
✔ | ✕ | ✕ | ✔ |
.mod |
✔ | ✕ | ✕ | ✔ |
.pdf |
~ | ✔ | ? | ✔ |
.swf |
✔ | ✕ | ✕ | ✔ |
.xm |
✔ | ✕ | ✕ | ✔ |
| Upload other formats | ✔ | ? | ? | ✔ |
Accessibility and Well-being
| Feature | Sharkey | WAFRN | Mastodon | Akkoma |
|---|---|---|---|---|
| Only chronological timelines | ✔ | ✔ a | ✕ b | ✔ |
| No infinite timeline | ✕ | ✕ | ✕ | ✕ |
| Disable auto update of the timeline | ✔ | ✔✔ c | ✔ | ✕ |
| Reduced motion | ✔ | ✔ | ✔ | ✕ |
| Disable auto play of GIFs | ✔ | ✕ | ✔ | ✕ |
| Auto show alt text of media | ✕ | ✔ | ✕ | ✔ |
| Auto hide posts without alt text under a content warning sign | ✕ | ✔ | ✕ | ✕ |
| Manual approval of followers | ✔ | ✔ | ✔ | ✔ |
| Hide the list of your followers and follows | ✔✔ d | ✔✔ e | ✔ f | ✔✔ d |
| Disable post interactions counts | ✕ | ✔ | ✕ | ✕ |
a. This applies to the Bluesky bridging as well as WAFRN doesn't support Bluesky feeds but their support, including the "For You" feed is something that is considered to be added.
b. Mastodon has a "Trending" feed which suggests popular posts from the entire known network without specific sorting. There's no option to disable the feed from showing up in the sidebar. The default feed is a chronological feed with posts from followed accounts though.
c. WAFRN doesn't have auto updating feed at all.
d. Sharkey and Akkoma allow to control that setting for the list of followers and the list of follows separately. Sharkey also allows not only either enable or disable it, but also enable it only for followers.
e. WAFRN also allows to hide everyone's count of followers and follows as well as count of posts from the user.
f. Mastodon still shows the count of followers and follows and doesn't have either of the listed features from Sharkey and WAFRN.
Security
| Feature | Sharkey | WAFRN | Mastodon | Akkoma |
|---|---|---|---|---|
| TOTP | ✔ | ✔ | ✔ | ? |
| Passkeys | ✔ | ✕ | ✔ | ? |
Applications
| Feature | Sharkey | WAFRN | Mastodon | Akkoma |
|---|---|---|---|---|
| Web frontend | ✔ | ✔ | ✔ | ✔ |
| Ability to replace stock web frontend | ✕ | ✕ | ✕ | ✔ |
| Mobile app(s) | ~ a | ✔ | ✔✔ b | ~ a |
| Desktop app(s) | ~ c | ✕ | ✔ d | ~ a |
| Mastodon compatibility e | ~ f | ✕ | ✔ (duh) | ✔ |
a. There are no apps which support all features of Sharkey/Akkoma, the closest thing is to use an app for Misskey/Pleroma, from which Sharkey/Akkoma were forked.
b. Not only Mastodon has an official app, there are a bunch of third-party apps.
c. Aria for Misskey, a mobile-first Misskey client, is available for Windows, macOS and Linux. Note the "mobile-first" part.
d. There are third-party desktop applications available for Mastodon.
e. Mastodon API compatibility allows you to use alternative web frontends (Nicolium, Elk etc.), desktop apps (Tokodon, Tuba etc.), mobile apps (Tusky, Moshidon etc.) or even apps for retro computers (Macstodon, Mastodon 3.11 For Workgroups etc.) which rely on Mastodon API.
f. Sharkey implements most of the Mastodon API methods, but, for example, doesn't allow to create Mastodon-style applications through its UI. Also the API implementation has compatibility issues, for example Moshidon crashes upon trying to view notifications of a Sharkey account.
Freedom
| Feature | Sharkey | WAFRN | Mastodon | Akkoma |
|---|---|---|---|---|
| Open-source | ✔ (AGPLv3) | ✔ (AGPLv3 + Apache 2.0) | ✔ (AGPLv3) | ✔ (AGPLv3) |
| Can be self-hosted | ✔ | ✔ | ✔ | ✔ |
| Source code is hosted on | Self-hosted GitLab a | Codeberg b | GitHub c | Self-hosted Forgejo d |
| Supported translation services | DeepL d, DeepLX e, LibreTranslate f | ✕ | DeepL d | ✕ |
| Supported captcha services | hCaptcha, mCaptcha, reCAPTCHA, Turnstile, Friendly Captcha | ✕ | hCaptcha | ? |
| All functions, including optional, which rely on external services, can use self-hostable software | ✔ | ✔ | ✕ | ✔ |
a. GitLab is a software forge developed by a for-profit American company with the same name. In recent times it suffered immense enshittification and being turned into AI-first product, which actually didn't help make GitLab more popular so they doubled down on it. GitLab is available as self-hosted solution but it still requires a subscription plan to unlock all of the features.
b. GitHub is a software forge developed by a company with the same name, which in turn is owned by Microsoft. Ever since the rise of the popularity of AI, GitHub began to integrate AI features in the most annoying ways possible. For example, you cannot disable Copilot contributions in your repository. Also they use people's repositories to train their AI. Relatively recently as of the writing of this section GitHub started suffering outages of various degrees due to AI agents extensively using GitHub, and, being a small indie company not backed by one of the richest companies ever they are, they are unable to keep up with the traffic. This led to overall GitHub's uptime reaching less than 90%. They also got compromised recently and tried to hide it by posting about it only on Twitter and nowhere else.
c. Codeberg is a software forge hosted by a German non-profit with the same name. It is using Forgejo and is the flagship instance of it. Codeberg's uptime isn't much better than GitHub's, especially the uptime of their CI/CD servers, due to them being almost constantly under a DDoS attack.
d. Forgejo is a self-hostable software forge, a fork of which is powering Codeberg. Forgejo was forked from Gitea after Gitea's development started being led by a for-profit company.
e. DeepL is a commercial AI translation service developed by a German company. It is considered one of the best machine translation services out there, but the AI model is considered unethical due to training data and CO2 usage data being unavailable and the model itself being closed-source.
f. DeepLX is an open-source proxy for DeepL. Instead of communicating with DeepL's API, it uses the Chrome extension endpoint to do the translation, allowing to use DeepL without requiring any API keys.
g. LibreTranslate is an open-source machine translation service powered by open-source Argos Translate engine. LibreTranslate has a flagship instance and also can be self-hosted. The translation quality is pretty poor though.