relatica/user_manual.md

226 wiersze
9.3 KiB
Markdown

# Relatica User Manual
## Introduction
[Friendica](https://friendi.ca/) is a free and open source decentralized social network project that
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
network), [PixelFed](https://pixelfed.org/) (an Instagram-like decentralized social netwmaork),
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
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
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
official sanction from the Friendica project itself.
## 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.
## 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
= Fix show rules button on logged out
= Fix circles data not loading correctly
* Splash screen
* Loading screen
* Sign in screen
* Where you will manage your one(or more) accounts
* Login Types
* Standard login (default and should be used)
* Username/password (should be able to get access to device's password vault)
* Steps
* Select "Standard login"
* Enter in your server's name (without the https://)
* Hit "Sign in" button
* Will be prompted to re-affirm you agree to your server's rules. Same as when you created
account. Must accept to continue (see snack bar prompt when refuse)
* Will be taken to WebView to adjudicate.
* May need to login in the WebView if not already.
* Once completed brought to your home screen
## Tabs
### Timelines
#### Timeline Types
* Discuss partitions
* 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
## Authoring Posts/Comments
### 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
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
### 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
* forces timeline reloads
### Managing User Blocks
### Filtering
### Controlling Spoiler/Content Warning/Hiding