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.9

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.9
File Size Uploaded Provenance Actions
tutor_contrib_sample-3.8.9.tar.gz 8.1 kB With provenance Details for tutor_contrib_sample-3.8.9.tar.gz

Built distribution (wheel)

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

Total release size: 17.0 kB

Release files / tutor_contrib_sample-3.8.9.tar.gz

Download URL tutor_contrib_sample-3.8.9.tar.gz
Size 8.1 kB
Tags Source
SHA-256 checksum
How to use checksums
4b0d8c34c58876516df78ef6c857cc3f176b3a6530ee7f9849a9ed9f0a9e5774
BLAKE2b-256 checksum
How to use checksums
5d392d9b51bb85886a6f8a14480b2362e7fa1f3293deb26b5f36c55f6841bb68
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.9-py3-none-any.whl

Download URL tutor_contrib_sample-3.8.9-py3-none-any.whl
Size 8.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
fc906348971e6c605104986a5b9800c3d55aedbc8b8c0d0d937db2b7cce8a2ee
BLAKE2b-256 checksum
How to use checksums
a69a65db77e55313c9217898e686adc791928254ce106bc130a83bf6bec7d1fd
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.9

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.9.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