Tool for supporting lecturers on creating automatic assessment of students programs submitted to the GradeScope Platform. It generates Gradescope-compatible Autograder scripts in a zip file for a JSON configuration file. It validates your config, renders test scripts using Jinja2 templates, and packages everything for upload to Gradescope. It follow a template-based approach based in the reference GradeScope Autograder scripts samples.
The project has command-line and a web version (see more at [web/README.md]).
- Create and activate a virtual environment (recommended):
python -m venv .venv
# On Windows:
.venv\Scripts\activate
# On macOS/Linux:
source .venv/bin/activate
pip install -r requirements.txt
Run the CLI from the project root:
python autograder_gen/cli.py --config <path/to/config.json> [--output <output_dir>] [--verbose] [--validate-only]
Arguments:
--config
,-c
(required): Path to your JSON configuration file.--output
,-o
: Output directory for the generatedautograder.zip
(default:./output
).--verbose
,-v
: Enable verbose logging.--validate-only
: Only validate the configuration file, do not generate the autograder.
Example:
python autograder_gen/cli.py --config examples/py_simple/config.json
This will:
- Validate the config file
- Generate all necessary autograder scripts and files
- Zip file as
autograder.zip
in./output
- Alan Guedes – @alanlivio
- Giorgio Werberich Scur – @giorgioscur
Contributions from others are welcome and will be credited.
This project is licensed under the MIT License.
The University of Reading retains rights of original contributions.