Getting Started
The Gradescope Submitter is a web application that integrates D2L Brightspace LMS with Gradescope for automated code grading. It provides students with an in-browser code editor that allows them to write, test, and submit Python code directly from their D2L quizzes.
How It Works
Student in D2L → Opens Quiz → Iframe loads Code Editor →
Student writes code → Runs locally (Pyodide) → Submits to Gradescope →
Gradescope autogrades → Results displayedSystem Components
The system consists of:
- Express.js server — Handles authentication and Gradescope API calls
- CodeMirror editor — In-browser code editor with syntax highlighting
- Pyodide — Real Python execution in the browser for testing code
- LTI 1.3 integration — Secure connection between D2L and the platform
Prerequisites
Before starting, ensure you have:
| Requirement | Version | Notes |
|---|---|---|
| Node.js | 18.x or higher | Download |
| npm | 9.x or higher | Comes with Node.js |
| Git | Any recent version | For cloning the repository |
| Gradescope Account | Instructor access | Must be able to create assignments |
| D2L Brightspace | Admin access | For LTI tool registration |
Server Requirements
- Hosting: Any server that can run Node.js (AWS, Heroku, DigitalOcean, university server, etc.)
- Domain: A domain name with HTTPS (required for D2L iframe embedding)
- Ports: 3000 (HTTP) and 3443 (HTTPS) or configure as needed
Next Steps
- Quick Start — Get up and running in 5 minutes
- Features — Explore all the features
- Instructor Setup — Full setup guide for instructors