View Source API Reference Bonfire v0.9.10-cooperation-beta.108
Modules
ActivityPub Library for elixir.
An ActivityPub Actor type and functions for dealing with actors.
Contract for ActivityPub module adapters
Handles fetching AS2 objects from remote instances.
Module for building and performing HTTP requests.
Specifies connection options for HTTP requests
Rate limit middleware for Tesla using Hammer
Based on TeslaExtra.RateLimit
and TeslaExtra.RetryAfter
Helper functions for building HTTP requests
Takes into account the Retry-After header returned by the server when the rate limit is exceeded.
Defines the contract used by federation implementations to publish messages to their peers.
This module normalises outgoing data to conform with AS2/AP specs and handles incoming objects and activities
Serves and fetches data (mainly actor URI) necessary for federation when only the username and host is known.
Helpers for workers to use
Instances context.
Instance.
Filter activities depending on their origin instance
Prunes objects from the database.
The worker to prune old data from the database.
Contains queries for Object.
This module contains some useful functions for containing objects to specific
origins and determining those origins. They previously lived in the
ActivityPub Transformer
module.
Handles RSA keys for Actors & helpers for HTTP signatures
Implementation for behaviour from HTTPSignatures
library
Misc functions used for federation
The entrypoint for defining your web interface, such as controllers, views, channels and so on.
Endpoints for serving objects and collections, so the ActivityPub API can be used to read information from the server.
Conveniences for translating and building error messages.
Standard error view
Endpoints for the ActivityPub inbox
Ensures HTTP signature has been validated by previous plugs on ActivityPub requests.
An extension for Bonfire that handles
A mixin used to record parent/child relationships between categories (eg. a topic that belongs to a group) and between objects and categories (eg. a post was published in a topic)
File management extension for Bonfire.
Saves uploaded files as attachments to the post.
Fetch and save metadata of URLs
Uploader for larger images, for example, a profile page banner.
Extension to Waffle.Definition, adding support for checking against media types parsed through magic bytes instead of file extensions, which can be modified by the user.
Uploader for larger images, for example, a profile page banner.
Resizes images at compile time (when possible) or runtime
Bonfire.Label is a powerful and flexible extension designed to enhance content moderation and improve online safety. Inspired by the design principles outlined by Prosocial Design (specifically the Label Misleading Content & Add Links to Reliable Related Content pattern), this library enables the addition of custom labels and descriptions to user-generated posts.
Creates a changeset for publishing a page
Runs at compile-time to include dynamic strings (like verb names and object types) in localisation string extraction.
An extension to enable
An extensions for asking questions, collecting options, and conducting ranked voting on Bonfire
Creates a changeset for publishing choice(s) for a question
Creates a changeset for publishing a page
A way to have data seeds that work similarly to migrations.
An extension for Bonfire that handles
A mixin used for adding tags to an object
Runs ecto migrations automatically on startup (add this to your app's supervision tree)
A behaviour implemented by our data migrations (generally backfills).
Configuration for a DataMigration
behaviour module, used by the DataMigration.Runner
.
Runs a DataMigration
A custom Ecto type for handling the serialization of arbitrary data types stored as binary data in the database. Requires the underlying DB field to be a binary.
A custom Ecto type for handling the serialization of arbitrary data types stored as JSON data in the database. Requires the underlying DB field to be :map (eg. JSONB field).
Log Ecto queries, and output warnings for slow or possible n+1 queries
Checks a query against the previous one and increments counter of collisions or swaps previous query with the last one.
Provides functions for sanitising input on Ecto.Changeset
string fields.