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.
CPub.HTTP.Request
struct.
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.
RDF Signify (http://purl.org/signify/spec).
An Ed25519 public key.
A RDF Signify secret key.
A mnesia table indexing valid signatures.
A CPub user.
A CPub.User
s followers.
A CPub.User
s inbox.
A CPub.User
s 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).
Plug that fetches and assigns CPub.Web.Authentication.Session
from Plug.Session
.
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.
Implements the OAuth 2.0 Authorization Endpoint (https://tools.ietf.org/html/rfc6749#section-3.1).
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.
Implements the OAuth 2.0 Token Endpoint (https://tools.ietf.org/html/rfc6749#section-3.2).
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
NodeInfo metadata exposing protocol (see https://github.com/jhass/nodeinfo/blob/main/PROTOCOL.md).
Implements the NodeInfo endpoint (https://github.com/jhass/nodeinfo/blob/main/PROTOCOL.md).
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.
Implements URN Resolution endpoints (https://tools.ietf.org/html/rfc2169).
Helpers and utils for dealing with URN resolution.
WebFinger discovery protocol.
Implements the WebFinger endpoint (https://tools.ietf.org/html/rfc7033).
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.