Skip to main content
Python Software Foundation 20th Year Anniversary Fundraiser  Donate today!

Zucchini is an automatic grader tool for use in grading programming assignments.

Project description

Zucchini Documentation Status Updates

Zucchini is an automatic grader tool for use in grading programming assignments.


$ pip install --user zucchini
$ zucc --help

Getting Started with Development

After cloning this repo and installing virtualenv, run

$ virtualenv -p python3 venv
$ . venv/bin/activate
$ pip install -r requirements.txt
$ pip install -r requirements_dev.txt
$ zucc --help


  • Unified grading infrastructure: eliminates maintenance load of ad-hoc per-assignment graders
  • Separates test results from computed grades: graders provide test results which are stored on disk, and then zucchini calculates grade based on the weight of each test. That is, graders do not perform grade calculation; they only gather information about students’ work
  • Simple configuration: update one YAML file and store your graders in git repositories for all your TAs
  • Relative weighting: no more twiddling with weights to get them to add up to 100
  • Import submissions from Gradescope, Canvas Assignments, or Canvas Quizzes
  • No more copy-and-pasting grades and commments: automated upload of Canvas grades and gradelogs
  • Flatten (extract) archived submissions
  • Gradescope integration: generate a Gradescope autograder tarball for an assignment with one command


  • Austin Adams (@ausbin) for creating lc3grade, which eventually became zucchini
  • Cem Gokmen (@skyman) for suggesting converting lc3grade into a generalized autograder for more than just C and LC-3 homeworks, and creating the initial structure of zucchini
  • Patrick Tam (@pjztam) for implementing a bunch of graders, gradelogs, and gradelog upload
  • Kexin Zhang (@kexin-zhang) for exploring Canvas bulk submission downloads and for creating the demo downloader, which changed our lives
  • Travis Adams (@travis-adams) for nothing


0.1.0 (2017-12-17)

  • First release on PyPI.

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for zucchini, version 2.0.8
Filename, size File type Python version Upload date Hashes
Filename, size zucchini-2.0.8-py2.py3-none-any.whl (68.8 kB) File type Wheel Python version py2.py3 Upload date Hashes View
Filename, size zucchini-2.0.8.tar.gz (71.8 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring DigiCert DigiCert EV certificate Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page