Skip to main content

Assignments Overview

Each Pawtograder assignment is backed by a handout repository (starter code) and, optionally, a grader repository (instructor tests and the pawtograder.yml config). When you release an assignment, Pawtograder creates a private student repository from the handout for every student (or group). The autograder runs on every push and reports results back to Pawtograder, where you can handgrade against rubrics, release results, and respond to regrade requests.

First-time setup checklist

1

Create the assignment

From Manage → Assignments, click New Assignment. Pick a title and slug, then fill in:
  • Release Date and Due Date (in the course time zone).
  • Points Possible — the maximum the rubric can sum to.
  • Group configuration — individual, group-optional, or group-required.
  • Max Late Tokens and whether to Permit Empty Submissions.
  • Show Leaderboard if you want a public ranking.
See Configuration for the full field reference.
2

Set up the grader repo

The grader repo holds your reference solution, instructor tests, and pawtograder.yml. The handout repo holds the starter that students see. Write the autograder config in the grader repo; see Configuring Autograders.
3

Define the rubric

Build the Grading Rubric in the rubric editor. The rubric defines the parts, criteria, and checks that graders apply during handgrading. See Rubrics.
4

Release and monitor

Releasing the assignment creates student repositories and notifies students. Use the Assignment Dashboard for overall progress, the Grading Status view for handgrading progress, and Test Insights for systemic autograder failures.

What’s on each assignment

Each assignment has its own management area inside Manage → Assignments → [Assignment], organized into pages that map to the docs in this section:
PageDocs
ConfigurationConfiguration
Repositories (and permissions audit)Repository Permissions, Repository Analytics
GroupsGroups
Due Date ExceptionsExtensions
RubricRubrics
Autograder & Test InsightsConfiguring Autograders, Test Insights
Grading AssignmentsAssigning Grading Tasks
Grading StatusGrading Status
All Submissions (handgrading + bulk actions)Handgrading, Bulk Actions
SecuritySecurity Dashboard
LeaderboardLeaderboard

GitHub permissions

Pawtograder creates two GitHub teams for each class — a staff team and a students team. Staff are granted access to every assignment repository; students are granted access to only their own. The students team can be used by instructors to share additional read-only repositories (in-class exercises, code samples) with the whole class. Pawtograder reconciles repository collaborators against current group membership whenever you click Fix Repository Permissions on an assignment’s Repositories page. Run the audit after roster changes, group reshuffles, or when a student reports a missing repo. Details and the full audit flow are in Repository Permissions.

Syncing handout updates

After an assignment is released you can push updates from the handout repo to every student repo while preserving each student’s work. The sync detects merge conflicts, retries transient failures, and lets you target a subset of students. Trigger it from the assignment’s Repositories page.