

It’s the most powerful and feature-rich Fediverse server application ever, hands down. Also because it has features implemented that go vastly beyond what ActivityPub is capable of.
It was made by Friendica’s own creator by first forking Friendica twice over in 2011, then completely re-writing the second fork in 2012 and then expanding the re-written second fork in 2015.
While it was the first application to ever implement ActivityPub (July, 2017; two months before Mastodon), it has always been based on its own protocol, Zot, that was invented by Hubzilla’s own creator in 2011.
It’s Friendica, much more modular, with nomadic identity, with a staggering permissions system, expanded into a full-blown “social content management system” with all bells and whistles.
It’s basically Facebook meets WordPress meets Nextcloud meets a whole lot of other things.
Features:
- Can be used both like Mastodon (follow people/accounts) and like Lemmy (join groups), and that’s just the beginning
- Account and identity are not the same
- One account can contain multiple fully independent identities (kind of “accounts within an account”, only they’re called “channels”)
- Nomadic identity: A channel can exist on multiple fully independent servers simultaneously; the instances of the channel are mutual live and hot backups of each other; this also makes moving identities from one server to another vastly more complete than on most other Fediverse server applications
- OpenWebAuth magic sign-on: Hubzilla logins are recognised by (streams) and Forte and itself; Hubzilla itself recognises logins on Mitra, Friendica, (streams), Forte and itself
- ActivityPub connectivity is only optional; can be used as an “anti-Mastodon drawbridge”
- Optional connectivity to diaspora*
- Optional crossposters to WordPress, LiveJournal, Libertree and DreamWidth
- Can subscribe to RSS and Atom feeds
- Each channel generates two Atom feeds itself, one for posts, one for comments
- Content from any contact can be automatically reposted (“channel sources”)
- Can be installed as a progressive Web app
- Multiple profiles per channel; one default public profile and any number of additional private profiles that can be assigned to certain contacts so that they can know things about you that the general public must not necessarily know
- Extensive profiles which can be made even more extensive (multiple dozen dedicated fields) optionally
- Channels can hide from directories
- Channels can be flagged NSFW
- The second-most advanced permissions system in the whole Fediverse; it works on three levels (for the whole channel, for each contact individually, for certain content)
- Discussion groups (called “community forums”) which are channels with a special channel type/with special channel settings
- Four channel types to choose from: public, private, community forum and a custom type in which 17 permission settings can be adjusted individually
- The custom channel type allows for various degrees of private and/or moderated groups
- The permissions system makes it possible to grant full administration permission for your channel to any contact with client-side OpenWebAuth support; this also makes it possible to appoint additional admins/moderators for community forums
- Channel-wide filter, consisting of one blocklist and one allowlist; optional individual filter with blocklist and allowlist per contact (as in, you can follow someone and then filter them and only them); the filter system has loads of options from regex to a special filter syntax with Boolean operators, making it one of the most advanced and powerful filter systems in the Fediverse
- Enclosed threaded conversations like on blogs/Facebook/Tumblr/Reddit/Hacker News/Slashdot/etc. with one post and otherwise comments; supports FEP-171b “Conversation Containers”
- Fully capable of long-form blogging
- Hashtag cloud
- Optional list or cloud of internal, non-federating keywords
- Can both render and generate the full gamut of HTML text formatting
- Supports both titles and summaries in separate fields (the summary field is the same field that Mastodon has been misusing as a CW field since 2017)
- No character limits worth mentioning (technically, the character limit for message texts is 16,777,215)
- Images can be embedded within the message text of any post or comment like in a blog post; no limit for how many images can be embedded
- No limit for poll options either
- Full support for forum-style quotes
- Full support for quote-tweet-style quote-posts; these are dumb copies of the original message
- Stream sorting options:
- Complete conversations, most recent comment first (default)
- Complete conversations, most recent post first
- Single-message piecemeal à la Mastodon
- Stream filtering options:
- DMs
- Messages/conversations from a certain privacy group
- Messages/conversations from a certain community forum
- Messages marked with a star (a kind of primitive bookmark)
- Your own messages
- Messages filed into a “folder” (a more advanced bookmarking system)
- Messages/conversations from a certain contact
- Built-in cloud file space with support for subfolders at any depth, WebDAV access and its own file manager; the file space is also used to store images and other media embedded in messages; permissions apply here as well, and guest read-access tokens can be granted
- Event calendar with support for Event-type ActivityStreams objects
- CalDAV calendar server which uses the event calendar frontend
- Optional CardDAV addressbook server
- Optional articles (non-federating written pieces of virtually unlimited length; can be used for blogging without throwing excessively long posts at Mastodon users)
- Optional planning cards (similar to articles, but with a few extra features)
- Optional wikis (any number of independent wikis per channel with any number of pages each)
- Optional static webpages that can include dynamic content from elsewhere on the channel; the feature can also be used to pimp up the channel itself
- Optional notes
- Optional OpenStreetMap support
- Optional QR code generator
- Extensive customisation options for what the channel looks like even with the default Redbasic theme, and that doesn’t even take third-party themes into account which basically give Hubzilla an entirely new Web UI
Friendica has only got four advantages over Hubzilla. One, it supports the Mastodon client API (although that’s half-useless because Mastodon apps don’t even cover 20% of Friendica’s features). Two, it has mobile apps of its own, although stable releases only exist for Android; on Hubzilla, there’s only the Web UI for everyone anywhere. Three, it has even more connection options like being able to integrate a Bluesky account and “remote-control” it. Four, it’s easier to use; this is also because Hubzilla is highly modular with tons of optional, off-by-default stuff whereas just about everything is hard-coded to permanently on on Friendica.
Otherwise, Friendica is no real match for Hubzilla, and Bonfire is even less of a match.
This would be possible if they all implemented nomadic identity.
But for starters, nomadic identity via ActivityPub (as opposed to via Zot/Nomad) is still quite young. No Fediverse server application has ever successfully been converted from non-nomadic and account = identity to Forte’s level of nomadic identity (which ActivityPub-based Forte has inherited from Nomad-based (streams)).
Besides, even if some Fediverse server app actually managed to go all the way in converting to full nomadicity, I can’t see Mastodon do that. Or Lemmy, for that matter.
And even nomadic identity would require you to have separate accounts on Lemmy and Pixelfed and Mastodon and BookWyrm. Even if your identity was spread across Lemmy and Pixelfed and Mastodon and BookWyrm servers. For your identity does not include your login credentials.
What you will definitely not get is a “pan-Fediverse” login (create a Lemmy or Mastodon account and be able to use it to log into any server of any Fediverse application and use it like with a local account). There’s a whole pile of reasons why this will never happen.