Skip to main content

tutor-contrib-sample

A Tutor plugin that installs and wires up the three other sub-packages in this repo (backend-plugin-sample, frontend-plugin-sample, and brand-sample) into a Tutor-based Open edX deployment. Enabling this plugin is the simplest way to see all three working together.

How to use it

See the root README for the full setup. The minimum:

pip install -e ./tutor-contrib-sample
tutor plugins enable sample
tutor dev launch

tutor-mfe is required for the frontend slot configuration to apply; the plugin degrades gracefully (backend + brand only) if it isn't installed.

How it works

The plugin is a single file: tutorsample/plugin.py. Each section below is independent of the others.

Backend. Installs the published openedx-plugin-sample package from PyPI into the LMS and CMS images via the openedx-dockerfile-post-python-requirements patch. Also registers backend-plugin-sample as a MOUNTED_DIRECTORIES entry, so that running tutor mounts add "$PWD/backend-plugin-sample" bind-mounts your local checkout and pip-installs that instead.

Migrations. Adds manage.py lms migrate openedx_plugin_sample (and the CMS equivalent) to the tutor … do init task list.

Frontend. (Only when tutor-mfe is installed.) Installs the published @openedx/plugin-sample npm package into every MFE image, injects an import { CourseList } from '@openedx/plugin-sample' into the generated env.config.jsx, and wires CourseList into the org.openedx.frontend.learner_dashboard.course_list.v1 slot (hiding the default contents).

Brand. Sets MFE_CONFIG["PARAGON_THEME_URLS"] to load Paragon's default light theme overlaid with the compiled brand-sample/dist/light.min.css served from jsDelivr.

TODO: the brand override currently assumes brand-sample has been pushed to jsDelivr from main. For a source-hacking workflow, this should be swapped for the tutor-contrib-paragon flow described in brand-sample/README.md.

Metadata

Release files for tutor-contrib-sample 3.8.8

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for tutor-contrib-sample 3.8.8
File Size Uploaded Provenance Actions
tutor_contrib_sample-3.8.8.tar.gz 8.1 kB With provenance Details for tutor_contrib_sample-3.8.8.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for tutor-contrib-sample 3.8.8
File Interpreter ABI Platform Actions
tutor_contrib_sample-3.8.8-py3-none-any.whl Python 3 none any Details for tutor_contrib_sample-3.8.8-py3-none-any.whl

Total release size: 17.0 kB

Release files / tutor_contrib_sample-3.8.8.tar.gz

Download URL tutor_contrib_sample-3.8.8.tar.gz
Size 8.1 kB
Tags Source
SHA-256 checksum
How to use checksums
7a7facc220d407ec74220dfd7f31d8d2a891da75a493d0798c0ed4384a2f86e7
BLAKE2b-256 checksum
How to use checksums
c702ca592f4a8e14d961bd7274435da451383fa764d69b243696de94d3a8b733
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 26, 2026.

Transparency log

Release files / tutor_contrib_sample-3.8.8-py3-none-any.whl

Download URL tutor_contrib_sample-3.8.8-py3-none-any.whl
Size 8.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
602dc85f45aace3e0ef2a61a2fc910a969e4d27b099ce66baee442d15ab8689d
BLAKE2b-256 checksum
How to use checksums
9579802b4674c2c08e3be6d3c1df71c6fd44f8df504d880c66614f2f93d87cee
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 26, 2026.

Transparency log

Security for tutor-contrib-sample 3.8.8

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for tutor_contrib_sample-3.8.8.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 26, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page