Embed peertube videos into wagtail.
Você não pode selecionar mais de 25 tópicos Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.
François Poulain dff205ea23 adding dist tarball 1 ano atrás
dist adding dist tarball 1 ano atrás
wagtailembedpeertube Initial adding 1 ano atrás
.gitignore Initial adding 1 ano atrás
CHANGELOG.md Initial adding 1 ano atrás
CONTRIBUTORS.txt Initial adding 1 ano atrás
LICENSE Initial adding 1 ano atrás
MANIFEST.in Initial adding 1 ano atrás
README Initial adding 1 ano atrás
README.md Initial adding 1 ano atrás
setup.py Initial adding 1 ano atrás

README.md

wagtailembedpeertube

Embed peertube videos into wagtail.

Table of content

Introduction

Wagtail has a great support of Oembed, for embedding content. Unfortunately the Oembed mecanism is based on services domain names and URI; and this is prone to centralization since it limits to a short list of selected providers.

By the way, currently there is for now more than 300 instances and it will probably grow with years. See e.g. https://instances.joinpeertube.org

This app bring Oembed support for decentralized peertube instances.

To do this we only focus on a string URI filtering, allowing all services from any domain name.

Installation

Requirements

You will need wagtail.embeds which is part of Wagtail’s core modules.

Pip installation

$ pip install wagtailembedpeertube

Settings

Add the app to your project

You have to add wagtailembedpeertube anywhere after wagtail.embeds in your project settings.

Configure embeds finders

You have to declare the peertube finder in your project settings, so Wagtail will make use of it.

WAGTAILEMBEDS_FINDERS = [
    {
        'class': 'wagtail.embeds.finders.oembed',
    },
    {
        'class': 'wagtailembedpeertube.finders',
    },
]

Since the first matching finder will be used, you should declare wagtailembedpeertube as last because others finders are matching domain names and may be more precise.

See Configuring embed “finders” for more informations.

Usage

That’s it! You should now be able to embed any peertube content using the EmbedBlock:

from wagtail.embeds.blocks import EmbedBlock

class MyStreamField(blocks.StreamBlock):
    ...

    embed = EmbedBlock()

License

wagtailembedpeertube is developed by Cliss XXI and licensed under the AGPLv3+.