(streams)

Revision as of 18:13, 12 November 2024 by FuzzyBot (talk | contribs) (Updating to match new version of source page)
Other languages:

The Streams repository contains the latest generation of free, open-source, decentralised, nomadic Fediverse server software. It was created in October of 2021 as a fork of Roadhouse which has an ancestry that leads all the way back to Friendica and includes Hubzilla. All were created by Mike Macgirvin.

Ce qui est unique à propos de ce serveur d'application, c'est qu'elle n'a pas de nom, pas de logo, pas de marques, pas de site Web et n'est même pas considérée comme un projet. Tout le code responsable de l'envoi des données nodeinfo a été supprimé. Il est absent de tous les sites Web répertoriant les What are Fediverse projects? et les instances. Son noyau est dans le domaine public, et les contributions des différents et différentes développeuses, sont sous différentes licences libres, ce qui rend tellement difficile la re-licence d'un fork de l'ensemble à des licenses non-libres et propriétaires, que cela peut être considéré comme impossible.

All this is deliberate and intentional by Macgirvin's decision.[1]

Technically speaking, the name "Streams" refers to the repository and not the software. In order to be able to mention the nameless software by something that resembles a name, it is colloquially being referred to as (streams), the parentheses being part of the replacement name.

Histoire

Around 2018, about three years after Hubzilla had been forked from the perpetual development project Red Matrix, experience with nomadic identity had shown that the way this feature was implemented in the Zot protocol was lacking. Zot needed further development, but this couldn't be done on Hubzilla, also because advancing it meant cutting off most or all non-nomadic connections.

So a whole number of new projects was created, all leading back to the Red Matrix and mostly past Hubzilla, and all with their set of features and external connections drastically reduced in comparison to Hubzilla or to the Red Matrix shortly before the Hubzilla fork. By and by, they led to new versions of Zot, Zot6 which introduced the single-sign-on system OpenWebAuth in 2018, Zot8 which re-introduced an improved integration of ActivityPub in ca. 2019 and finally Zot11, re-named Nomad, in 2021. The latter was first tested on Roadhouse.

Shortly later, Nomad was considered ready for prime-time. So Roadhouse was forked once again into deliberately nameless code that was declared a stable release and uploaded to a repository named Streams. At the end of the same year, everything else that had come after Hubzilla was discontinued, and administrators of still existing instances were advised to do the fairly easy cross-grade to the Streams repository.

Role dans le Fédiverse

Unlike all other Fediverse projects, the code in the Streams repository is primarily not intended to be a self-contained, branded product. Instead, the repository was created for developers to fork it and create new Fediverse applications out of it with state-of-the-art features such as nomadic identity and OpenWebAuth readily available. Thus, developing such advanced software built on top of the Nomad protocol, but with ActivityPub support, could actually be easier than developing yet another project on top of ActivityPub from scratch without nomadic identity and without OpenWebAuth.

Still, it is being increasingly deployed as-is as another decentralised social platform. After all, since its predecessors have been discontinued, it is one out of only two Fediverse projects that support nomadic identity and the only one to do so in a more lightweight and easier-to-handle way than Hubzilla and without Hubzilla's massive feature overhead.

Fonctionnalités

(streams) shares a number of features with its predecessors.

Structure et connectivité

Like everything from the Red Matrix on, including Hubzilla, it replaces traditional accounts as user identities with channels. User accounts are only used to access these channels, of which each user account can have more than one. Channel roles are still variable and allow for everything from personal channels to private or public forums, but (streams) has no longer got Hubzilla's pre-defined channel roles.

Also, like everything from the Red Matrix on with the exception of the first Osada, it supports nomadic identity. Hubzilla channels can be cloned to (streams) except for content and data that isn't supported by (streams). Cloning (streams) channels to Hubzilla, however, does not work due to (streams)' Nomad being too advanced in comparison to Hubzilla's Zot6.

(streams) supports cross-project single sign-on via OpenWebAuth which it has inherited from all the way back to Zap.

Connectivity to the outside world has been greatly reduced to only ActivityPub. On the other hand, Nomad has better ActivityPub support than the previous Zot versions.

Posts

Many posting features even date all the way back to 2010 when Friendica was released as Mistpark. Just like on Friendica, Hubzilla and everything in-between, (streams) threads consist of only one post or direct message at the beginning plus comments rather than a loosely-tied string of single posts. The start post defines the access permissions which can't be changed for comments, and the start poster can delete comments from the thread.

Just like on everything created by Mike Macgirvin, there is virtually no character count limit. It is possible to write posts, comments or direct messages with tens of thousands of characters.

Posts and direct messages have four fields:

  • The first one is the title. It is not supported by typical ActivityPub-based projects.
  • The second one is the summary. It uses the abstract field, the same that Mastodon and others use for content warnings. A summary makes sense, considering how long posts can be.
  • The third one is for categories. It is only used to find posts within the channel; it's the only field that isn't federated except to nomadic clones.
  • The fourth one is the text body.

Comments only have the text body.

(streams) has extensive text formatting support. Whereas Friendica and Hubzilla only use BBcode for formatting posts, comments and direct messages, (streams) adds both Markdown and HTML.

Another typical "quirk" since Friendica is image handling: Each channel comes with its own file hosting space, complete with a file manager. Images have to be uploaded to that file space first, and then they can be linked into posts and direct messages and, with a trick, also into comments. Hotlinking images from elsewhere is technically possible, but as discouraged as elsewhere on the Web.

The number of images that can be added to a post is practically unlimited. The position of each image can be chosen freely; they can be embedded anywhere in the text like in a blog post. It's worth mentioning, however, that this feature is not supported by most other projects that federate with (streams).

Alt-text can be added by editing the markup code that places images into the text. There is no dedicated UI element for it.

Polls have a practically unlimited number of choices again, and they support multiple selection.

Like its predecessors, and unlike Mastodon for example, (streams) doesn't need the abstract field for content warnings. It has a built-in but optional app that can automatically detect keywords or hashtags in a customisable field and hide posts, comments or direct messages behind specific content warnings. Also, images can be flagged sensitive, causing them to be blurred out until they're clicked. Neither translates to the ActivityPub-based parts of the Fediverse, though.

A few more special applications have made it from Hubzilla such as the gallery for showing images on the file space, the flash cards or one that shows the location where a post was made on OpenStreetMap.

Fonctionnalités d'Hubzilla retirées

In general, the number of features has been greatly reduced in comparison with Hubzilla, most of which were already cut from the first Osada. For example, both calendars are gone. The traditional public calendar à la Friendica has been replaced with an events app for the time being. The CalDAV server is still there, as is the CardDAV server, but both don't have a UI anymore.

Some more apps that are exclusive to Hubzilla now are webpages, wikis and articles. Technically speaking, since regular posts have had their features extended on (streams), they can do everything that articles can do on Hubzilla, but articles still have one or two advantages over posts.

Except for Pubcrawl, the optional ActivityPub connector, all federation with non-Zot projects and platforms has been removed, mostly when the first incarnation of Osada was created already. While (streams) cannot subscribe to RSS or Atom feeds anymore, channels still generate feeds.

Liens externes

Références