Setting up GitHub for CodeTeach
Install the CodeTeach GitHub App on the account or organization where you want private assignment template repos created.
Written By Alan Gandy
Last updated About 3 hours ago
You need one GitHub-side setup step before CodeTeach can deploy assignments:
Choose the GitHub account or organization that will own the instructor template repos.
Install the CodeTeach GitHub App there.
GitHub Classroom is no longer required for the CodeTeach workflow.
Choose where templates should live
You can deploy to:
Your personal GitHub account
A course GitHub organization
A department or school GitHub organization
A course org is cleaner if you manage many students, but a personal account works if you are using CodeTeach as a lean generator and manually creating private student repos.
Install the CodeTeach App
You'll hit the install screen the first time you try to deploy an assignment. CodeTeach detects the App isn't installed yet and shows an Install GitHub App button on the Deploy step.
Click it, choose the account or org where assignment template repos should live, and approve the installation. After GitHub redirects you back to CodeTeach, that target appears in the Deploy dropdown.
What permissions the App requests
The App requests the permissions needed to create and validate assignment repos:
Administration — create repos and mark them as templates
Contents — push starter code, instructions, workflow files, and instructor validation branches
Actions — configure and read GitHub Actions autograding runs
Checks — read autograder results back into the wizard
Pull requests — support instructor feedback workflows if you use them manually
You can review or revoke the installation from GitHub's app settings at any time.
Student privacy
Keep the CodeTeach App installation limited to the instructor-owned template and solution repositories CodeTeach uses. Do not grant the App access to student-submission repositories. Keep the template private and instructor-only; students should receive separate private repos created with Include all branches unchecked.
Under that installation boundary, CodeTeach does not need access to student submissions, rosters, or grades. Repository owners remain responsible for verifying the installation's selected-repository scope in GitHub.
Where to go next
Ready to make your first assignment? Read Picking a generation mode.
Deploy succeeded? Read Creating student repositories after deploy.
Need a course org? Create one at github.com/organizations/new and install the CodeTeach App on it.
Still need help? Ask the team