Skip to main content

Python and Jupyter Notebook autograder

Project description

Otter-Grader

PyPI Run tests codecov Documentation Status Slack

Otter Grader is a light-weight, modular open-source autograder developed by the Data Science Education Program at UC Berkeley. It is designed to work with classes at any scale by abstracting away the autograding internals in a way that is compatible with any instructor's assignment distribution and collection pipeline. Otter supports local grading through parallel Docker containers, grading using the autograder platforms of 3rd party learning management systems (LMSs), the deployment of an Otter-managed grading virtual machine, and a client package that allows students to run public checks on their own machines. Otter is designed to grade Python scripts and Jupyter Notebooks, and is compatible with a few different LMSs, including Canvas and Gradescope.

Documentation

The documentation for Otter can be found here.

Contributing

PRs are welcome! Please submit a PR to the master branch with any updates. Make sure to update the changelog in the docs with any information about the contribution.

To set up the testing environment, install the requirements in requirements.txt and run the test directory as a module to execute the tests:

python3 -m test

To run the tests for a specific tool, add the command-line path for that tool to the command. For example, to run the tests for otter generate autograder, run

python3 -m test generate autograder

or to run all tests for commands under otter generate, run

python3 -m test generate

Changelog

The changelog can be found in the documentation.

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

otter-grader-3.0.0.tar.gz (111.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

otter_grader-3.0.0-py3-none-any.whl (163.7 kB view details)

Uploaded Python 3

File details

Details for the file otter-grader-3.0.0.tar.gz.

File metadata

  • Download URL: otter-grader-3.0.0.tar.gz
  • Upload date:
  • Size: 111.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.6.0 pkginfo/1.7.0 requests/2.23.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.7.7

File hashes

Hashes for otter-grader-3.0.0.tar.gz
Algorithm Hash digest
SHA256 dff20ab33a76f08e8fbc6d4c267dfb711b35c88d3be7ac4db58378c94c855963
MD5 72082ad7fe85d1a5efc287ac9106a939
BLAKE2b-256 2775bcd0e7969eb299bab273c0af476eccfff79002dfb5073b81095aa80fc188

See more details on using hashes here.

File details

Details for the file otter_grader-3.0.0-py3-none-any.whl.

File metadata

  • Download URL: otter_grader-3.0.0-py3-none-any.whl
  • Upload date:
  • Size: 163.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.6.0 pkginfo/1.7.0 requests/2.23.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.7.7

File hashes

Hashes for otter_grader-3.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 a88decfdbc8eb86c231704167b5023b74c9029c268f668a16535cbab778ed28b
MD5 e5c936d3a83c2f4badcf67bb6c956a4c
BLAKE2b-256 6921f115d928b7726bbab3c7f6ce46051011c9f7f39bab7659e4b83e7a55baa2

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page