These are some of the features and goals that BrutaLinks has currently and plans to reach eventually:
Features¶
Minimalist user interface¶
The brutalist web design paradigm appeals to me both as a web user and developer, so I tried to keep content as the focus on the website. Some concesions had to be made to allow for threaded comments and other layout niceties, but I feel like we achieved a good balance.
Submission scores¶
Based on the number of Yays! and Nays!, every submission or comment gets a scored that determines the position on the page. The scoring algorithm is the one used on HackerNews.
User scores¶
The way they are being computed is not in the traditional way where it equals the sum of the scores for each of their submissions, but it represents the total number of Yays! the user submitted themselves. This makes it more like a “positivity” score than a submission and discussion quality score.
Threaded discussions¶
Discussions on BrutaLinks are using a threaded format. There are some additional details in the architecture document.
Anonymous interactions¶
We would like to support Anonymous commenting (maybe even submissions) on BrutaLinks instances, however the burden that would put on the larger fediverse network requires us to reason some more about how to make that less prone to being abused.
Open moderation log¶
As it targets mostly small communities BrutaLinks offers user level moderation tools. Muting, blocking and reporting are the three main operations a user can do to protect themselves against unwanted content, people or instances.
- Blocking - when blocking a user, none of the content they generate will reach you. When blocking a submission, it will be removed from your listings.
- Reporting - your report is being forwarded to the moderators and the instance admin.
- Muting - TODO
There is also a more technical document related to how moderation can be achieved by using only standard ActivityPub vocabulary.
Invitation based user graph¶
Every user can send invite other people to join a BrutaLinks instance.
Private messaging¶
Users can message one another, and the privacy of the messages is limited only to the people it addresses. By default a message is sent just to the person it’s being addressed to, but group messages can be sent by using @ mentions of any other users to be included.
Performance¶
Built using a performant stack, and with minimal dependencies, we try to provide an easy out of the box installation. We provide standalone statically compiled binaries and docker containers. Even though having some developer experience is useful, we’ve tried to make deployment as easy as possible.