Docs / Offline Autograder / Overview

Overview

PyAutoGrader lets instructors create automated Python assignments and distribute them as encrypted .agr files. Students run the grader on their own machines, getting instant pass/fail feedback on 60+ test types. Results can be collected via PDF export, email, Google Sheets, or a self-hosted submission server.

All three applications - the instructor editor, the student grader, and the submission server - are available as pre-built executables for Windows, macOS, and Linux.

Key Concepts

Instructor Application - A desktop app where you create assignments, configure tests, manage solution files, and set up reporting channels. Exports encrypted .agr files for distribution.

Student Application - A desktop app that loads .agr files and runs the grader against student code. Shows real-time results with pass/fail feedback and scores.

.agr Files - Encrypted assignment files containing tests, solutions, and configuration. Students cannot see solutions or expected values. Distributed via your LMS or email.

Result Collection - Four channels (use any combination): PDF export, email notifications, Google Sheets webhooks, or a self-hosted Flask submission server with analytics and plagiarism detection.

Who Is This For?

  • Instructors teaching Python courses at any level
  • Departments looking for a free alternative to subscription-based autograders
  • Educators who want students to learn real Python environment skills
  • Institutions that need FERPA-friendly grading (data stays on your infrastructure)

Next Steps

Start with Download and Install to get the applications, then continue to Instructor Setup to create your first assignment.