A collection of grading/quercus tools for University of Toronto instructors.
Project description
Cheesegrader 🧀
Cheesegrader is a CLI tool to streamline grading workflows for Quercus (Canvas).
Its main features are:
sorting: Sorting rubrics/student assignments into folders based on their filenames. Useful to organize graders.copying: Generating a copy of a file for each student. Useful for rubrics.renaming: Replacing one id filenames with another id. Useful when (e.g.) you bulk download off quercus and find out the assignments don't have UTORID in the name.downloading: Downloading student lists, or assignment submissions.uploading: Uploading grades, files, or both to quercus for every student.
Following the prompts should be pretty straightforward, but you can press h at any time for help, and q or ctrl+c to quit.
This has been very useful for me, and I hope it's very useful to you!
Table of contents
Getting Started
- From PyPI (when published):
- Windows (PowerShell):
py -m pip install cheesegrader - Then run:
cheesegrader
- Windows (PowerShell):
- From source (this repo):
git clone <repo-url>cd cheesegraderpy -m pip install -U pip- Editable dev install:
py -m pip install -e . - Then run:
cheesegrader
Running the CLI
- Windows:
py -m cheesegrader main - You’ll see a menu with modules:
- [0] Sorting
- [1] Copying
- [2] Uploading
- [3] Downloading
- Enter h at any prompt for help; q to quit.
Authentication and tokens
To use the uploading and downloading scripts, you will need to generate and input an API access token. You can get this:
- By following the instructions here... but they were out of date last time I checked.
- Logging in to canvas/quercus and then
account > settings > + New Access Token - Navigating to https://q.utoronto.ca/profile/settings and clicking
+ New Access Token
Course and assignmend IDs
- Course and assignment IDs are visible in Quercus URLs:
- CSVs should have clean headers (no duplicates, no blanks) and UTF-8 encoding.
Contact
- Submit issues/bugs here
- I'm also happy to answer any questions if you send them to jesse.wardbond at mail.utoronto.ca // ...existing code...
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file cheesegrader-1.0.0.tar.gz.
File metadata
- Download URL: cheesegrader-1.0.0.tar.gz
- Upload date:
- Size: 30.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5febe4e2029bab45b39e79669ba97f6f0f72030e0e501f78e32e865f4af73ddf
|
|
| MD5 |
6a07d32c70e26460a6e7e484ff62ca71
|
|
| BLAKE2b-256 |
75c35a261cb30e3f2813ad2236c2219ad44a25765ff437f4a5bc5310ea3067be
|
File details
Details for the file cheesegrader-1.0.0-py3-none-any.whl.
File metadata
- Download URL: cheesegrader-1.0.0-py3-none-any.whl
- Upload date:
- Size: 39.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0a2d2fc12c33b20c4fed4c06e1ab0716a8c0608cac79fc1d79966b01ac6e9759
|
|
| MD5 |
6b6600bcd5e376f13a242e1bdcc9de9b
|
|
| BLAKE2b-256 |
aceb999f5744f68f8b7fe0a87665deb8af42ba2ad85d57186dcfc982cda2885c
|