Pleroma

From Join the Fediverse
Revision as of 15:19, 11 January 2023 by Paula (talk | contribs)
This article is a draft!
A lot of info might still be missing and the page might change at any time.


Pleroma logo
Screenshot of Pleroma-FE
Official homepage pleroma.social
Initial release 22 February 2016[1]
Repository git.pleroma.social
Written in Elixir
License AGPLv3
Documentation docs-develop.pleroma.social
API Documentation api.pleroma.social
Featured instances List

Features

Pleroma's API is built upon Mastodon's and shares thereby many features, over time more and more unique features were added such as:

  • Reacting to posts with Unicode emoji
  • Making posts formatted as either HTML, BBCode or Markdown
  • Chatting with other users (Currently only compatible with other Pleroma instances)

Unfortunately, Pleroma does not implement the entire Mastodon feature set so there are features that are unsupported such as:

  • User migrations
    • Pleroma does notify the follower if the user they follow has migrated and also follows them back if configured by the follower
  • Trends
  • Endorsements (= User's choices)
  • Identity proofs

Removed limits

Different to Mastodon, Pleroma has lifted and increased many limits. These are now customizable by the instance administrators. Configurable limits are:

  • Profiles
    • Profile name length (100 characters by default)
    • Profile description/biography length (5000 characters by default)
    • Profile fields count (10 by default for local instance, 20 by default for remote instances)
      • Name of a profile field can be up to 512 characters long by default
      • Value of a profile field can be up to 2048 characters long by default
    • Pinned post count (5 by default)
  • Posts
    • Post content warning/subject + text length (5000 characters by default for local instance, 100k characters by default for remote instances until post gets dismissed)
    • Poll option count (20 options with 200 characters each by default)

Message rewrite facilities (MRFs)

Pleroma has a feature called MRF which stands for Message Rewrite Facility, these are pieces of configurable code which can change the federation behavior of Pleroma instances.

Which MRFs are enabled and enforced are generally publicly available under the instance's about page (/about) or over the API (/api/v1/instance, JSON property: pleroma.metadata.federation). Administrators can choose to omit this information.

Further reading: Configuration Cheat Sheet - Pleroma Documentation # Message rewrite facility

Example of MRFs

  • mrf_steal_emoji Saves received custom emojis from entered instances
  • mrf_follow_bot Automatically follows discovered remote users for helping the local instance to federate
  • mrf_hellthread Decreases prominence of hellthreads by unlisting them from the public timeline and not notifying mentioned users.
  • mrf_hashtag Marks posts as NSFW, unlists posts or rejects them completely based on what hashtags they contain.
mrf_simple

This MRF allows instance administrators to reject activities and content from certain remote instances. Possible configurations are:

  • Rejecting of all reports, attachments, avatars, banners or federated deletions
  • Marking all attachments of entered instances as NSFW
  • Unlisting from the federated timeline (also known as The Whole Known Network)
  • Enforce all remote statuses to be followers-only