A library of graders for edX Custom Response problems.
Version 3.0.0 (changelog)
Copyright 2017-2024 Jolyon Bloomfield and Chris Chudzicki
Licensed under the BSD-3 License.
We thank the MIT Office of Open Learning for their support.
Table of Contents
A demonstration course for the MITx Grading Library can be viewed here. The source code for this course is contained in this repository here.
Extensive documentation has been compiled for the configuration of the different graders in the library.
This is not required but can be useful for testing configurations in Python, rather than in edX.
To install:
Requirements: An installation of Python 3.8 or 3.11 (current edX versions).
- (Optional) Create and activate a new Python Virtual Environment.
- Clone this repository and
cd
into it. - Run
pip install -r requirements-python38.txt
orpip install -r requirements-python311.txt
to install the requirements based on the Python version you want to test. - Run
pytest
to check that tests are passing. (To invoke tests of just the documentation, you can run the following command:python -m pytest --no-cov --disable-warnings docs/*
)
- What's this
voluptuous
thing?
Voluptuous is a library that handles configuration validation, while giving (hopefully) meaningful error messages. We use it to automate the checking of the configurations passed into the mitxgraders
library. They need to be packaged together in the python_lib.zip
file.