edx-proctoring-proctortrack-v2
Proctortrack proctoring backend for Open edX, built on
edx-proctoring.
This repository ships two packages:
| Package | Registry | Purpose |
|---|---|---|
edx-proctoring-proctortrack-v2 |
PyPI | Registers the proctortrack Django backend (openedx.proctoring entry point) |
edx-proctoring-proctortrack-v2 |
npm | Provides proctortrack_custom.js — the browser Web Worker used during exams |
Note: This is the v2 distribution of the original
edx-proctoring-proctortrackpackage. The Python import path (edx_proctoring_proctortrack) and Studio proctoring provider name (proctortrack) are unchanged.
Requirements
- Python 3.11+
- OpenEdX with
edx-proctoringinstalled - Node.js (for npm package / webpack worker bundling at image build time)
Install (packages only)
These packages are published to PyPI and npm. In a typical Open edX deployment, the Tutor plugin installs them for you at image build time — you do not need to run these commands manually.
PyPI
pip install edx-proctoring-proctortrack-v2==2.0.1
npm
npm install edx-proctoring-proctortrack-v2@2.0.1
Open edX integration
From Sumac onward, Proctortrack is not bundled in edx-platform. Integration
is done with a Tutor plugin (proctortrack_v2.py) that installs
edx-proctoring-proctortrack-v2 from PyPI/npm and applies the required Django
settings during tutor images build openedx. No edx-platform fork is required.
Contact Verificient to obtain the Tutor plugin and Proctortrack credentials for your environment.
What you need from the Open edX side
| Requirement | Notes |
|---|---|
| Tutor | v15+ (Olive) through current; tested on Sumac/Ulmo |
| Docker | Required for Tutor image builds |
| Learning MFE | Proctored exams are served via the Learning MFE |
| Studio course setup | Set Proctoring Provider to proctortrack and configure proctored subsections |
The plugin configures PROCTORING_BACKENDS, feature flags, CORS, and webpack
worker settings automatically.
What you need from the Proctortrack side
| Requirement | Notes |
|---|---|
| Proctortrack server | Running instance with OAuth credentials |
client_id / client_secret |
Issued by Verificient for your LMS |
base_url |
Your Proctortrack server URL |
| Proctortrack desktop app | Installed on the learner's machine during exams |
| JS routing config (if applicable) | required public key, or CDN/config — provided by Verificient |
Once you have the plugin
-
Edit the configuration constants at the top of
proctortrack_v2.py(credentials and JS routing keys supplied by Verificient). -
Install and enable the plugin:
cp proctortrack_v2.py "$(tutor plugins printroot)/" tutor plugins enable proctortrack_v2
-
Build and launch:
tutor images build openedx tutor local launch
-
In Studio, set Proctoring Provider to
proctortrackfor the course and mark subsections as Proctored Exam.
After any plugin configuration change, rebuild the image:
tutor images build openedx
Development
pip install -e .
pip install -r requirements/base.txt
make extract_translations
License
Apache-2.0 — see LICENSE.md.
Links
Metadata
Release files for edx-proctoring-proctortrack-v2 2.0.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| edx_proctoring_proctortrack_v2-2.0.1.tar.gz | 13.9 kB | Without provenance | Details for edx_proctoring_proctortrack_v2-2.0.1.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| edx_proctoring_proctortrack_v2-2.0.1-py3-none-any.whl | Python 3 | none | any | Details for edx_proctoring_proctortrack_v2-2.0.1-py3-none-any.whl |
Total release size: 27.7 kB
Release files / edx_proctoring_proctortrack_v2-2.0.1.tar.gz
| Download URL | edx_proctoring_proctortrack_v2-2.0.1.tar.gz |
|---|---|
| Size | 13.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
7b5774e9eef0c13da7d463f02513218feff7139e50c593440eaa2e07972c8b77
|
|
BLAKE2b-256 checksum How to use checksums |
e641fee0dfb09063aa2a542e995279fde3d1575c720d4685e5b598f3352ad9bb
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.3
|
Release files / edx_proctoring_proctortrack_v2-2.0.1-py3-none-any.whl
| Download URL | edx_proctoring_proctortrack_v2-2.0.1-py3-none-any.whl |
|---|---|
| Size | 13.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
04b94493fb95208e06202a1f7679dbfa97b56f7c09bca2c29b8b33ea612fe5a0
|
|
BLAKE2b-256 checksum How to use checksums |
38eaa46488ef4dc266fd2bb2167f6b118b30dc6488936235b109595425fd64d2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.3
|
Security for edx-proctoring-proctortrack-v2 2.0.1
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.
No provenance found
None of the files in this release were uploaded with provenance metadata.
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.