API Reference CPub v0.3.0

Modules

CPub keeps the contexts that define your domain and business logic.

Implements strategies for delivering ActivityPub messages.

Implements strategies for dereferencing known types of URIs

Configuration wrapper.

Helpers to access Database.

A set in the CPub database.

ERIS bindings to mnesia database.

An encrypted block.

A mnesia transaction that is created when encoding/decoding ERIS content.

Wrapper for Tesla.request/2.

Configure Tesla.Client with default and customized adapter options.

Supervisor for pool workers. Does not do anything except enforce max connection limit.

Helper functions for building Tesla requests.

Middleware to get/release connections from CPub.HTTP.Gun.ConnectionPool

Magnet URIs builder.

Namespaces used by CPub

The public inbox of the CPub instance.

An Ed25519 public key.

A RDF Signify secret key.

A mnesia table indexing valid signatures.

A CPub user.

A CPub.Users outbox that can be used to post ActivityStream activities.

CPub.User.Registration models how a CPub.User is registered and can authenticate with CPub.

The entrypoint for defining your web interface, such as controllers, views, channels and so on.

An OAuth 2.0 client that is used by CPub to authenticate with an external provider. Replaces some functions of OAuth2.Client which uses CPub.HTTP to make requests.

Replacement for OAuth2.Request which uses CPub.HTTP to make requests.

Implements interactive user authentication by means of different providers.

Implements interactive user registration.

A request to register with an external identiy provider.

A CPub.Web.Authentication.Session is used for handling authentication with CPub.

Handles session creation and deletion (login/logout).

Ueberauth.Strategy for authentication with username/password (using the internal database).

Ueberauth.Strategy for authenticating with a dynamic Mastodon/Pleroma instance.

An Ueberauth strategy for Pleroma/Mastodon compatible providers.

An implementation of OAuth2 for Pleroma/Mastodon compatible providers.

Meta strategy for Ueberauth.Strategy.OIDC that allows dynamic client configuration.

The Authorization Code Strategy that does not use BasicAuth when there is no client_secret set.

An Ueberauth strategy for identifying with services implementing OpenID Connect.

An OAuth 2.0 Authorization.

Plug that assigns a CPub.Web.Authorization to the connection if valid access token is found in headers.

An OAuth 2.0 client that authenticates with CPub (see https://tools.ietf.org/html/rfc6749#section-2).

Controller that handles OAuth 2.0 client registration.

Error handler for OAuth 2.0 Authorization Server.

Defines the valid scopes of authorization to CPub.

An OAuth 2.0 Token that can be used to access ressources.

Helpers and utils for dealing with OAuth 2.0 Endpoint requests.

Conveniences for translating and building error messages.

Translates controller action results into valid Plug.Conn responses.

A module providing Internationalization with a gettext-based API.

A generic view for a blob of JSON

Most used routes paths generated with real instance URL.

Plug to parse RDF.Graph from request.

A generic view for anything that implements the RDF.Data protocol.

Module with named helpers generated from CPub.Web.Router.

Implement URN Resolution protocol as described in RFC 2169.

Helpers and utils for dealing with URN resolution.

WebFinger discovery protocol.

Canonical S-expressions.

Customized JSON.LD.DocumentLoader which uses CPub.HTTP to get remote contexts.

JSON-LD encoder which supports RDF.FragmentGraph, encodes with compaction and replaces objects' URIs with their content like ActivityPub specification requires.

JSON-LD encoder which supports RDF.FragmentGraph and encodes with compaction.

A set of RDF triples about the same subject or fragments of the subject.

Implements the serialization of RDF.FragmentGraph based on Canonical S-expressions.

An reference inside a RDF.FragmentGraph to another fragment.

RDF.JSON provides support for reading and writing the RDF 1.1 JSON Alternate Serialization (RDF/JSON) format.

Helpers to determine Activity Streams types.

Blank node Skolemization.

StreamData generators for RDF data.

Generate UUID URNs.