2025-07-08 00:53:16 +00:00
|
|
|
# Relatica User Manual
|
|
|
|
|
|
|
|
## Introduction
|
|
|
|
|
2025-07-19 20:31:59 +00:00
|
|
|
[Friendica](https://friendi.ca/) is a free and open source decentralized social network project that
|
2025-07-08 00:53:16 +00:00
|
|
|
allows users and/or organizations to create a social network server that operates with a similar
|
|
|
|
sort of user experience idiom as Facebook (posts/comments threads, groups, etc). It interacts with
|
|
|
|
software projects like [Mastodon](https://mastodon.social/) (a Twitter-like decentralized social
|
2025-07-19 20:31:59 +00:00
|
|
|
network), [PixelFed](https://pixelfed.org/) (an Instagram-like decentralized social netwmaork),
|
2025-07-08 00:53:16 +00:00
|
|
|
and [PeerTube](https://peertube.tv/) (a YouTube-like decentralized social network) to create a web
|
|
|
|
of interacting users and content that combined create a network of millions of users across
|
2025-07-19 20:31:59 +00:00
|
|
|
thousands of servers called "the fediverse" or "social web". [Elena Rossini](https://elena.social/)
|
|
|
|
has created [this great video](https://news.elenarossini.com/fediverse-video/) to help describe this
|
2025-07-08 00:53:16 +00:00
|
|
|
concept in a very approachable way.
|
|
|
|
|
|
|
|
The Friendica project itself is solely focused on the development of the server side software. It
|
|
|
|
does not host any "main" instance. All Friendica hosts are independent. At the time of this writing
|
|
|
|
there are approximately 80 "public" servers in
|
|
|
|
the [Friendica directory site](https://dir.friendica.social/) from which users can choose
|
|
|
|
to join. The [Fediverse Observer](https://friendica.fediverse.observer/stats) statistics site shows
|
|
|
|
over 280 active Friendica servers on the fediverse, hosting thousands of users writing millions of
|
|
|
|
posts/comments each month.
|
|
|
|
|
|
|
|
The Friendica project also does not write any client side software for mobile/desktop devices.
|
|
|
|
Instead it has implemented application programming interfaces (APIs) that allow independent projects
|
|
|
|
to interface with the server software programmatically. There have been other independent mobile
|
|
|
|
apps that can interface with Friendica. Some projects have even targeted Friendica directly for
|
|
|
|
Android. At the beginning of this project there was no project for iOS however.
|
|
|
|
|
|
|
|
Relatica represents an independent development to develop a mobile and desktop client for Friendica
|
|
|
|
that will allow users to interface with Friendica servers that they have accounts on. It will allow
|
|
|
|
them to create/edit/delete posts, take pictures to upload, check notifications on posts they've
|
|
|
|
written, basically most of the usual types of things that one likes to do with Friendica or any
|
|
|
|
other social network. By "independent" I mean that the project is not a part of nor receives any
|
2025-07-29 15:05:15 +00:00
|
|
|
official sanction from the Friendica project itself. Because Relatica is written with a technology
|
|
|
|
called [Flutter](https://flutter.dev/) it runs on iOS, Android, Windows, macOS, and Linux.
|
|
|
|
See [the install documentation](install.md) for more information on how to install it on each
|
|
|
|
platform.
|
2025-07-08 00:53:16 +00:00
|
|
|
|
|
|
|
## Document Overview
|
|
|
|
|
|
|
|
This manual is a brief tour of various common features of the Relatica Friendica client and how to
|
|
|
|
use them. Many of the features are self explanatory and common for a social network application.
|
|
|
|
Many of the workflows follow the same paradigm that the main Friendica website uses. Others are more
|
|
|
|
unique and/or configurable. This manual attempts to make those features and/or workflows more clear.
|
|
|
|
|
2025-07-19 20:31:59 +00:00
|
|
|
## Interesting Features
|
|
|
|
|
|
|
|
Relatica has some interesting features that some users may find particularly useful. This section
|
|
|
|
has an overview of those features with links to the relevant sections below.
|
|
|
|
|
|
|
|
* ***Moderation Tools:*** Social networks will invariably have content that we don't want to see, or
|
|
|
|
worse content that needs to be reported for various reasons, see [Moderation](#moderation)
|
|
|
|
section. There you will see things like how to block (and unblock) users and report
|
|
|
|
posts/comments, how to manage your content warning/spoiler alert settings, adjust filters, etc.
|
|
|
|
* ***Multiple simultaneous users:*** I often need to toggle between multiple accounts, especially
|
|
|
|
for testing. Being able to easily have multiple accounts loaded at the same time lets me quickly
|
|
|
|
hop between the two. Many people use multiple accounts to have multiple online "personalities".
|
|
|
|
For example they may have a work account and a personal account. See
|
|
|
|
the [Your First Login](#your-first-login) section and [Profile Management](#profile-management)
|
|
|
|
* ***Slow network assistance:*** There are times when network performance can be very challenging
|
|
|
|
with a social media app. Ever been in a place where there is very weak antenna? Social media apps
|
|
|
|
can be very greedy in how they pull down multimedia assets. To help cut down on bandwidth
|
|
|
|
requirements when the network is slow there is a [Low Bandwidth Mode](#low-bandwidth-mode) which
|
|
|
|
allows the user to only download new images on demand. Slower networks, or in cases of an
|
|
|
|
over-burdened server, it may be necessary to manually adjust how long Relatica will wait for a
|
|
|
|
response before it times out. This is adjustable as well, see
|
|
|
|
the [Network Request Timeout](#network-request-timeout) section.
|
|
|
|
* ***Focus Mode:*** Focus mode is a mechanism that allows the user to lock the app out from all but
|
|
|
|
seeing their own posts, creating new posts, or editing old posts. The user can specify how long
|
|
|
|
they want the app in that mode, with an override available only after solving a puzzle of
|
|
|
|
whichever difficulty they decided when they set the lock. See the [Focus Mode](#focus-mode)
|
|
|
|
section.
|
|
|
|
* ***Non-infinite scroll:*** One of the biggest problems with social media apps is getting lost in
|
|
|
|
the infinite timeline of content. This was first implemented back in 2006 and since used
|
|
|
|
throughout all social media. Without a little "inertia" of clicking on a "More" button you can
|
|
|
|
scroll for an hour or more and not realize how much time has gone. Relatica *intentionally* does
|
|
|
|
not implement this. One of the benefits of not using a social network or social network app
|
|
|
|
incentivized to keep you clicking forever to make more money is that we aren't using this common
|
|
|
|
psychological trick to keep you in the app.
|
|
|
|
* ***Filters:*** As mentioned as part of the content moderation point above, Relatica has
|
|
|
|
implemented a complex filtering mechanism to let the user selectively hide or totally remove from
|
|
|
|
view posts that contain content they don't want to see. That filtering can be any combination of
|
|
|
|
words in the post, hashtags, specific account authors, or web hosts. See
|
|
|
|
the [Filters Screen](#filters) section for more details
|
|
|
|
* ***Per Network Capabilities Management:*** One of Friendica's greatest powers is its abilities to
|
|
|
|
interact with many different types of networks. That can sometimes create problems for users that
|
|
|
|
don't want interactions from some networks to potentially spill into others. For example, someone
|
|
|
|
may want to be able to read Threads posts but they don't want to reshare that content since it
|
|
|
|
would then be injecting Facebook/Meta content and callbacks into the rest of the fediverse. This
|
|
|
|
allows users to customize what is possible to do with the various social networks beyond whatever
|
|
|
|
the inherent limitations of those networks are. See
|
|
|
|
the [Network Capabilities Settings](#network-capabilities) section for more information.
|
|
|
|
|
|
|
|
## Your First Login
|
|
|
|
|
2025-07-29 15:05:15 +00:00
|
|
|
This section goes through the various steps of the first login. Upon launching the app you will see
|
|
|
|
an initial splash screen:
|
|
|
|
|
|
|
|
<img src="screenshots/v1.1.0/screen_splash.png" alt="Relatica v1.1.0 Splash screen showing just the logo" width="300px"/>
|
|
|
|
|
|
|
|
Upon initial loading the splash screen turns into the loading screen. Some important differences are
|
|
|
|
that it shows the version number as well as any startup statuses showing accounts it is logging
|
|
|
|
into, etc.
|
|
|
|
|
|
|
|
<img src="screenshots/v1.1.0/screen_loading.png" alt="Relatica v1.1.0 Splash screen showing just the logo" width="300px"/>
|
|
|
|
|
|
|
|
At this point, if you had previously used the app and left the app with any accounts still logged in
|
|
|
|
then you would be presented with a timeline for the last active user. This initial time however,
|
|
|
|
with no accounts loaded, you will be brought to the "Sign In" screen to login a new user:
|
|
|
|
|
|
|
|
<img src="screenshots/v1.1.0/screen_signin.png" alt="Relatica v1.1.0 Splash screen showing just the logo" width="300px"/>
|
|
|
|
|
|
|
|
This screen will come up again later but for now we need to add our first user. There is no account
|
|
|
|
creation mechanism from inside Relatica. You must have an existing account on a server already
|
|
|
|
created. The [Friendica directory site](https://dir.friendica.social/) has a list of active servers
|
|
|
|
as well as those that are accepting new accounts. Once you have that account you are ready to login
|
|
|
|
for the first time in Relatica.
|
|
|
|
|
|
|
|
There are two types of login types: a "Standard" Login and a "Username/Password" login. The standard
|
|
|
|
login will open up Relatica in a browser session to have you allow access to your account from the
|
|
|
|
Relatica client on this device. The "Username/Password" method is a legacy login where you directly
|
|
|
|
enter your username and password for the site in question. As implied by the name the "standard"
|
|
|
|
method is preferred for several security reasons. For that reason that is the workflow we will
|
|
|
|
explore.
|
|
|
|
|
|
|
|
First you'll need to enter in the domain name of your friendica server. In the below screenshot it
|
|
|
|
is "friendica.myportal.social". You can find this in the URL bar of your web browser. Then hit
|
|
|
|
the "Sign In" button.
|
|
|
|
|
|
|
|
<img src="screenshots/v1.1.0/first_signin_step1.png" alt="Relatica v1.1.0 Splash screen showing just the logo" width="300px"/>
|
|
|
|
|
|
|
|
When you hit the "Sign In" button you will be prompted asking if you agree with the server rules for
|
|
|
|
the Friendica server your account was created on. You have already agreed to those rules when you
|
|
|
|
created the account. This is just further confirming that in order to meet moderation requirements
|
|
|
|
as specified by Apple and Google stores. Violation of those rules will be subject to whichever
|
|
|
|
measurse yoru particular Friendica host metes out.
|
|
|
|
|
|
|
|
If your server has no particular rules the dialog box will look like this, with just a blanket
|
|
|
|
statement:
|
|
|
|
<img src="screenshots/v1.1.0/dialog_rules_agreement_no_rules.png" alt="Relatica v1.1.0 Splash screen showing just the logo" width="300px"/>
|
|
|
|
|
|
|
|
If your server has published rules it will list the rules explicitly, such as here:
|
|
|
|
<img src="screenshots/v1.1.0/dialog_rules_agreement_with_rules.png" alt="Relatica v1.1.0 Splash screen showing just the logo" width="300px"/>
|
|
|
|
|
|
|
|
If you do not respond "Yes" to the server's rules Relatica will not let you use the account and you
|
|
|
|
will drop back to the sign in screen with the snack bar popup at the bottom explaining what
|
|
|
|
happened:
|
|
|
|
|
|
|
|
<img src="screenshots/v1.1.0/first_signin_didnt_accept_rules.png" alt="Relatica v1.1.0 Splash screen showing just the logo" width="300px"/>
|
|
|
|
|
|
|
|
If you do say "Yes" then Relatica will move on to the next phase of the sign in process. At this
|
|
|
|
point of the standard login process Relatica will have opened up a browser session for it to allow
|
|
|
|
you to authorize the Relatica app to use this account for logging in. If you aren't signed in
|
|
|
|
already you will be prompted to do so, such as in this screenshot:
|
|
|
|
|
|
|
|
<img src="screenshots/v1.1.0/first_signin_browser_not_signedin.png" alt="Relatica v1.1.0 Splash screen showing just the logo" width="300px"/>
|
|
|
|
|
|
|
|
Enter your login information at this point. Once you have done this you will be at the same step as
|
|
|
|
someone already logged in which is to approve for the app on this device to use this account's
|
|
|
|
credentials:
|
|
|
|
|
|
|
|
<img src="screenshots/v1.1.0/first_signin_approve.png" alt="Relatica v1.1.0 Splash screen showing just the logo" width="300px"/>
|
|
|
|
|
|
|
|
Once you hit the "Yes" button the rest of the authentication process will continue and Relatica will
|
|
|
|
bring you to the home screen, which is your standard timeline view:
|
|
|
|
|
|
|
|
<img src="screenshots/v1.1.0/screen_home.png" alt="Relatica v1.1.0 Splash screen showing just the logo" width="300px"/>
|
|
|
|
|
|
|
|
You are now logged into your account within Relatica.
|
|
|
|
|
|
|
|
It is possible to have multiple accounts, manage those account logins, et cetera. For more
|
|
|
|
information about that see [Profile Management](#profile-management) section of this manual below.
|
2025-07-08 00:53:16 +00:00
|
|
|
|
|
|
|
## Tabs
|
|
|
|
|
|
|
|
### Timelines
|
|
|
|
|
|
|
|
#### Timeline Types
|
|
|
|
|
2025-07-19 20:31:59 +00:00
|
|
|
* Discuss partitions
|
2025-07-08 00:53:16 +00:00
|
|
|
* My Posts
|
|
|
|
* My Network
|
|
|
|
* Global Fediverse
|
|
|
|
* Local Fediverse
|
|
|
|
* Circles
|
|
|
|
* Groups
|
|
|
|
* Channels
|
|
|
|
|
|
|
|
#### Post/Comment actions
|
|
|
|
|
|
|
|
* Clicking on a post
|
|
|
|
* Popup menu
|
|
|
|
* Open post (same as clicking on it)
|
|
|
|
* Show Likers
|
|
|
|
* Show Reshares
|
|
|
|
* Block User
|
|
|
|
* Report Post/Comment
|
|
|
|
* Open in Browser
|
|
|
|
* Copy URL
|
|
|
|
* Copy Post Text
|
|
|
|
|
2025-07-19 20:31:59 +00:00
|
|
|
## Authoring Posts/Comments
|
|
|
|
|
2025-07-08 00:53:16 +00:00
|
|
|
### Notifications
|
|
|
|
|
|
|
|
### Contacts
|
|
|
|
|
|
|
|
### Explore
|
|
|
|
|
|
|
|
#### Searching
|
|
|
|
|
|
|
|
#### Trending
|
|
|
|
|
|
|
|
* Global Tags
|
|
|
|
* Local Tags
|
|
|
|
* Statuses
|
|
|
|
* Links
|
|
|
|
|
|
|
|
#### Followed Tags
|
|
|
|
|
|
|
|
#### Suggested Users
|
|
|
|
|
|
|
|
## Drawer Menu
|
|
|
|
|
|
|
|
### Profile Management
|
|
|
|
|
|
|
|
### Focus Mode
|
|
|
|
|
|
|
|
### Gallery Viewing/Management
|
|
|
|
|
|
|
|
### Direct Messages
|
|
|
|
|
|
|
|
### Blocks
|
|
|
|
|
|
|
|
### Filters
|
|
|
|
|
|
|
|
### Circles Management
|
|
|
|
|
|
|
|
### Settings
|
|
|
|
|
|
|
|
#### Low Bandwidth Mode
|
|
|
|
|
|
|
|
#### Network Request Timeout
|
|
|
|
|
|
|
|
#### Group Notifications by Type
|
|
|
|
|
|
|
|
#### Spoiler/Content Warning Hiding
|
|
|
|
|
|
|
|
#### Confirm Reporting Prompt
|
|
|
|
|
|
|
|
#### Open Tags in App
|
|
|
|
|
|
|
|
#### Dark Mode Theme Setting
|
|
|
|
|
|
|
|
#### Clear Local Caches
|
|
|
|
|
|
|
|
#### Logging (Setting Level and Viewing)
|
|
|
|
|
|
|
|
#### Network Capabilities
|
|
|
|
|
|
|
|
## Moderation
|
|
|
|
|
2025-07-19 20:31:59 +00:00
|
|
|
Relatica helps users with this via a
|
|
|
|
few moderation tools. First, it's possible to block accounts that the user dislikes, see
|
|
|
|
the [Blocking a User](#blocking-a-user) section. Second, it is possible to report posts/comments
|
|
|
|
to the server your account is logged into, see
|
|
|
|
|
2025-07-08 00:53:16 +00:00
|
|
|
### Reporting Posts/Comments
|
|
|
|
|
|
|
|
* No API method for doing reports so must be done in Friendica UI proper
|
|
|
|
* Workflow for report
|
|
|
|
* Menu item
|
|
|
|
* Confirm (user configurable)
|
|
|
|
* iOS Launches WebView with the post/comment highlighted
|
|
|
|
* Android?
|
|
|
|
|
|
|
|
### Blocking a User
|
|
|
|
|
2025-07-19 20:31:59 +00:00
|
|
|
* forces timeline reloads
|
|
|
|
|
2025-07-08 00:53:16 +00:00
|
|
|
### Managing User Blocks
|
|
|
|
|
|
|
|
### Filtering
|
|
|
|
|
|
|
|
### Controlling Spoiler/Content Warning/Hiding
|